1400eb892:	48 83 c4 28          	add    $0x28,%rsp
1400eb896:	c3                   	ret
1400eb897:	85 d2                	test   %edx,%edx
1400eb899:	79 0a                	jns    0x1400eb8a5
1400eb89b:	b8 01 00 00 00       	mov    $0x1,%eax
1400eb8a0:	48 83 c4 28          	add    $0x28,%rsp
1400eb8a4:	c3                   	ret
1400eb8a5:	41 b8 01 00 00 00    	mov    $0x1,%r8d
1400eb8ab:	48 83 c4 28          	add    $0x28,%rsp
1400eb8af:	e9 0c 02 00 00       	jmp    0x1400ebac0
1400eb8b4:	cc                   	int3
1400eb8b5:	cc                   	int3
1400eb8b6:	cc                   	int3
1400eb8b7:	cc                   	int3
1400eb8b8:	cc                   	int3
1400eb8b9:	cc                   	int3
1400eb8ba:	cc                   	int3
1400eb8bb:	cc                   	int3
1400eb8bc:	cc                   	int3
1400eb8bd:	cc                   	int3
1400eb8be:	cc                   	int3
1400eb8bf:	cc                   	int3
1400eb8c0:	40 53                	rex push %rbx
1400eb8c2:	b8 20 00 00 00       	mov    $0x20,%eax
1400eb8c7:	e8 64 52 1c 00       	call   0x1402b0b30
1400eb8cc:	48 2b e0             	sub    %rax,%rsp
1400eb8cf:	48 63 da             	movslq %edx,%rbx
1400eb8d2:	4c 8b c9             	mov    %rcx,%r9
1400eb8d5:	48 85 c9             	test   %rcx,%rcx
1400eb8d8:	75 36                	jne    0x1400eb910
1400eb8da:	e8 91 b7 03 00       	call   0x140127070
1400eb8df:	4c 8d 05 72 39 20 00 	lea    0x203972(%rip),%r8        # 0x1402ef258
1400eb8e6:	ba c5 01 00 00       	mov    $0x1c5,%edx
1400eb8eb:	48 8d 0d ce 38 20 00 	lea    0x2038ce(%rip),%rcx        # 0x1402ef1c0
1400eb8f2:	e8 99 b8 03 00       	call   0x140127190
1400eb8f7:	45 33 c0             	xor    %r8d,%r8d
1400eb8fa:	ba 02 01 0c 00       	mov    $0xc0102,%edx
1400eb8ff:	41 8d 48 0f          	lea    0xf(%r8),%ecx
1400eb903:	e8 88 b9 03 00       	call   0x140127290
1400eb908:	33 c0                	xor    %eax,%eax
1400eb90a:	48 83 c4 20          	add    $0x20,%rsp
1400eb90e:	5b                   	pop    %rbx
1400eb90f:	c3                   	ret
1400eb910:	85 d2                	test   %edx,%edx
1400eb912:	78 2a                	js     0x1400eb93e
1400eb914:	3b 19                	cmp    (%rcx),%ebx
1400eb916:	7d 26                	jge    0x1400eb93e
1400eb918:	48 8b 49 08          	mov    0x8(%rcx),%rcx
1400eb91c:	48 8d 14 dd 00 00 00 	lea    0x0(,%rbx,8),%rdx
1400eb923:	00
1400eb924:	4c 89 04 0a          	mov    %r8,(%rdx,%rcx,1)
1400eb928:	49 8b 41 08          	mov    0x8(%r9),%rax
1400eb92c:	41 c7 41 10 00 00 00 	movl   $0x0,0x10(%r9)
1400eb933:	00
1400eb934:	48 8b 04 02          	mov    (%rdx,%rax,1),%rax
1400eb938:	48 83 c4 20          	add    $0x20,%rsp
1400eb93c:	5b                   	pop    %rbx
1400eb93d:	c3                   	ret
1400eb93e:	e8 2d b7 03 00       	call   0x140127070
1400eb943:	4c 8d 05 0e 39 20 00 	lea    0x20390e(%rip),%r8        # 0x1402ef258
1400eb94a:	ba c9 01 00 00       	mov    $0x1c9,%edx
1400eb94f:	48 8d 0d 6a 38 20 00 	lea    0x20386a(%rip),%rcx        # 0x1402ef1c0
1400eb956:	e8 35 b8 03 00       	call   0x140127190
1400eb95b:	44 8b cb             	mov    %ebx,%r9d
1400eb95e:	4c 8d 05 03 39 20 00 	lea    0x203903(%rip),%r8        # 0x1402ef268
1400eb965:	ba 06 01 08 00       	mov    $0x80106,%edx
1400eb96a:	b9 0f 00 00 00       	mov    $0xf,%ecx
1400eb96f:	e8 1c b9 03 00       	call   0x140127290
1400eb974:	33 c0                	xor    %eax,%eax
1400eb976:	48 83 c4 20          	add    $0x20,%rsp
1400eb97a:	5b                   	pop    %rbx
1400eb97b:	c3                   	ret
1400eb97c:	cc                   	int3
1400eb97d:	cc                   	int3
1400eb97e:	cc                   	int3
1400eb97f:	cc                   	int3
1400eb980:	48 8b 41 18          	mov    0x18(%rcx),%rax
1400eb984:	48 89 51 18          	mov    %rdx,0x18(%rcx)
1400eb988:	48 3b c2             	cmp    %rdx,%rax
1400eb98b:	74 07                	je     0x1400eb994
1400eb98d:	c7 41 10 00 00 00 00 	movl   $0x0,0x10(%rcx)
1400eb994:	c3                   	ret
1400eb995:	cc                   	int3
1400eb996:	cc                   	int3
1400eb997:	cc                   	int3
1400eb998:	cc                   	int3
1400eb999:	cc                   	int3
1400eb99a:	cc                   	int3
1400eb99b:	cc                   	int3
1400eb99c:	cc                   	int3
1400eb99d:	cc                   	int3
1400eb99e:	cc                   	int3
1400eb99f:	cc                   	int3
1400eb9a0:	b8 28 00 00 00       	mov    $0x28,%eax
1400eb9a5:	e8 86 51 1c 00       	call   0x1402b0b30
1400eb9aa:	48 2b e0             	sub    %rax,%rsp
1400eb9ad:	48 85 c9             	test   %rcx,%rcx
1400eb9b0:	74 10                	je     0x1400eb9c2
1400eb9b2:	83 39 00             	cmpl   $0x0,(%rcx)
1400eb9b5:	74 0b                	je     0x1400eb9c2
1400eb9b7:	33 d2                	xor    %edx,%edx
1400eb9b9:	48 83 c4 28          	add    $0x28,%rsp
1400eb9bd:	e9 9e 00 00 00       	jmp    0x1400eba60
1400eb9c2:	33 c0                	xor    %eax,%eax
1400eb9c4:	48 83 c4 28          	add    $0x28,%rsp
1400eb9c8:	c3                   	ret
1400eb9c9:	cc                   	int3
1400eb9ca:	cc                   	int3
1400eb9cb:	cc                   	int3
1400eb9cc:	cc                   	int3
1400eb9cd:	cc                   	int3
1400eb9ce:	cc                   	int3
1400eb9cf:	cc                   	int3
1400eb9d0:	48 85 c9             	test   %rcx,%rcx
1400eb9d3:	74 46                	je     0x1400eba1b
1400eb9d5:	53                   	push   %rbx
1400eb9d6:	b8 20 00 00 00       	mov    $0x20,%eax
1400eb9db:	e8 50 51 1c 00       	call   0x1402b0b30
1400eb9e0:	48 2b e0             	sub    %rax,%rsp
1400eb9e3:	83 79 10 00          	cmpl   $0x0,0x10(%rcx)
1400eb9e7:	48 8b d9             	mov    %rcx,%rbx
1400eb9ea:	75 2a                	jne    0x1400eba16
1400eb9ec:	4c 8b 49 18          	mov    0x18(%rcx),%r9
1400eb9f0:	4d 85 c9             	test   %r9,%r9
1400eb9f3:	74 21                	je     0x1400eba16
1400eb9f5:	48 63 01             	movslq (%rcx),%rax
1400eb9f8:	83 f8 01             	cmp    $0x1,%eax
1400eb9fb:	7e 12                	jle    0x1400eba0f
1400eb9fd:	48 8b 49 08          	mov    0x8(%rcx),%rcx
1400eba01:	48 8b d0             	mov    %rax,%rdx
1400eba04:	41 b8 08 00 00 00    	mov    $0x8,%r8d
1400eba0a:	e8 11 78 1d 00       	call   0x1402c3220
1400eba0f:	c7 43 10 01 00 00 00 	movl   $0x1,0x10(%rbx)
1400eba16:	48 83 c4 20          	add    $0x20,%rsp
1400eba1a:	5b                   	pop    %rbx
1400eba1b:	c3                   	ret
1400eba1c:	cc                   	int3
1400eba1d:	cc                   	int3
1400eba1e:	cc                   	int3
1400eba1f:	cc                   	int3
1400eba20:	b8 28 00 00 00       	mov    $0x28,%eax
1400eba25:	e8 06 51 1c 00       	call   0x1402b0b30
1400eba2a:	48 2b e0             	sub    %rax,%rsp
1400eba2d:	45 33 c0             	xor    %r8d,%r8d
1400eba30:	48 83 c4 28          	add    $0x28,%rsp
1400eba34:	e9 f7 f9 ff ff       	jmp    0x1400eb430
1400eba39:	cc                   	int3
1400eba3a:	cc                   	int3
1400eba3b:	cc                   	int3
1400eba3c:	cc                   	int3
1400eba3d:	cc                   	int3
1400eba3e:	cc                   	int3
1400eba3f:	cc                   	int3
1400eba40:	48 85 c9             	test   %rcx,%rcx
1400eba43:	74 14                	je     0x1400eba59
1400eba45:	85 d2                	test   %edx,%edx
1400eba47:	78 10                	js     0x1400eba59
1400eba49:	3b 11                	cmp    (%rcx),%edx
1400eba4b:	7d 0c                	jge    0x1400eba59
1400eba4d:	48 8b 41 08          	mov    0x8(%rcx),%rax
1400eba51:	48 63 d2             	movslq %edx,%rdx
1400eba54:	48 8b 04 d0          	mov    (%rax,%rdx,8),%rax
1400eba58:	c3                   	ret
1400eba59:	33 c0                	xor    %eax,%eax
1400eba5b:	c3                   	ret
1400eba5c:	cc                   	int3
1400eba5d:	cc                   	int3
1400eba5e:	cc                   	int3
1400eba5f:	cc                   	int3
1400eba60:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1400eba65:	57                   	push   %rdi
1400eba66:	b8 20 00 00 00       	mov    $0x20,%eax
1400eba6b:	e8 c0 50 1c 00       	call   0x1402b0b30
1400eba70:	48 2b e0             	sub    %rax,%rsp
1400eba73:	4c 8b 51 08          	mov    0x8(%rcx),%r10
1400eba77:	48 8b d9             	mov    %rcx,%rbx
1400eba7a:	8b 09                	mov    (%rcx),%ecx
1400eba7c:	48 63 c2             	movslq %edx,%rax
1400eba7f:	49 8b 3c c2          	mov    (%r10,%rax,8),%rdi
1400eba83:	4d 8d 1c c2          	lea    (%r10,%rax,8),%r11
1400eba87:	8d 41 ff             	lea    -0x1(%rcx),%eax
1400eba8a:	3b d0                	cmp    %eax,%edx
1400eba8c:	74 1e                	je     0x1400ebaac
1400eba8e:	2b ca                	sub    %edx,%ecx
1400eba90:	ff c9                	dec    %ecx
1400eba92:	4c 63 c1             	movslq %ecx,%r8
1400eba95:	49 8b cb             	mov    %r11,%rcx
1400eba98:	49 c1 e0 03          	shl    $0x3,%r8
1400eba9c:	ff c2                	inc    %edx
1400eba9e:	4c 63 ca             	movslq %edx,%r9
1400ebaa1:	4b 8d 14 ca          	lea    (%r10,%r9,8),%rdx
1400ebaa5:	e8 b6 58 1f 00       	call   0x1402e1360
1400ebaaa:	8b 0b                	mov    (%rbx),%ecx
1400ebaac:	ff c9                	dec    %ecx
1400ebaae:	48 8b c7             	mov    %rdi,%rax
1400ebab1:	89 0b                	mov    %ecx,(%rbx)
1400ebab3:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1400ebab8:	48 83 c4 20          	add    $0x20,%rsp
1400ebabc:	5f                   	pop    %rdi
1400ebabd:	c3                   	ret
1400ebabe:	cc                   	int3
1400ebabf:	cc                   	int3
1400ebac0:	40 57                	rex push %rdi
1400ebac2:	b8 20 00 00 00       	mov    $0x20,%eax
1400ebac7:	e8 64 50 1c 00       	call   0x1402b0b30
1400ebacc:	48 2b e0             	sub    %rax,%rsp
1400ebacf:	48 8b f9             	mov    %rcx,%rdi
1400ebad2:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
1400ebad7:	8b 09                	mov    (%rcx),%ecx
1400ebad9:	2b c1                	sub    %ecx,%eax
1400ebadb:	3b d0                	cmp    %eax,%edx
1400ebadd:	7e 34                	jle    0x1400ebb13
1400ebadf:	e8 8c b5 03 00       	call   0x140127070
1400ebae4:	4c 8d 05 15 37 20 00 	lea    0x203715(%rip),%r8        # 0x1402ef200
1400ebaeb:	ba b4 00 00 00       	mov    $0xb4,%edx
1400ebaf0:	48 8d 0d c9 36 20 00 	lea    0x2036c9(%rip),%rcx        # 0x1402ef1c0
1400ebaf7:	e8 94 b6 03 00       	call   0x140127190
1400ebafc:	45 33 c0             	xor    %r8d,%r8d
1400ebaff:	41 8d 50 72          	lea    0x72(%r8),%edx
1400ebb03:	8d 4a 9d             	lea    -0x63(%rdx),%ecx
1400ebb06:	e8 85 b7 03 00       	call   0x140127290
1400ebb0b:	33 c0                	xor    %eax,%eax
1400ebb0d:	48 83 c4 20          	add    $0x20,%rsp
1400ebb11:	5f                   	pop    %rdi
1400ebb12:	c3                   	ret
1400ebb13:	4c 8b 57 08          	mov    0x8(%rdi),%r10
1400ebb17:	b8 04 00 00 00       	mov    $0x4,%eax
1400ebb1c:	48 89 5c 24 30       	mov    %rbx,0x30(%rsp)
1400ebb21:	8d 1c 11             	lea    (%rcx,%rdx,1),%ebx
1400ebb24:	3b d8                	cmp    %eax,%ebx
1400ebb26:	0f 4c d8             	cmovl  %eax,%ebx
1400ebb29:	4d 85 d2             	test   %r10,%r10
1400ebb2c:	75 60                	jne    0x1400ebb8e
1400ebb2e:	8b cb                	mov    %ebx,%ecx
1400ebb30:	48 8d 15 89 36 20 00 	lea    0x203689(%rip),%rdx        # 0x1402ef1c0
1400ebb37:	48 c1 e1 03          	shl    $0x3,%rcx
1400ebb3b:	41 b8 c3 00 00 00    	mov    $0xc3,%r8d
1400ebb41:	e8 7a 05 00 00       	call   0x1400ec0c0
1400ebb46:	48 89 47 08          	mov    %rax,0x8(%rdi)
1400ebb4a:	48 85 c0             	test   %rax,%rax
1400ebb4d:	0f 85 14 01 00 00    	jne    0x1400ebc67
1400ebb53:	e8 18 b5 03 00       	call   0x140127070
1400ebb58:	4c 8d 05 a1 36 20 00 	lea    0x2036a1(%rip),%r8        # 0x1402ef200
1400ebb5f:	ba c4 00 00 00       	mov    $0xc4,%edx
1400ebb64:	48 8d 0d 55 36 20 00 	lea    0x203655(%rip),%rcx        # 0x1402ef1c0
1400ebb6b:	e8 20 b6 03 00       	call   0x140127190
1400ebb70:	45 33 c0             	xor    %r8d,%r8d
1400ebb73:	ba 00 01 0c 00       	mov    $0xc0100,%edx
1400ebb78:	41 8d 48 0f          	lea    0xf(%r8),%ecx
1400ebb7c:	e8 0f b7 03 00       	call   0x140127290
1400ebb81:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1400ebb86:	33 c0                	xor    %eax,%eax
1400ebb88:	48 83 c4 20          	add    $0x20,%rsp
1400ebb8c:	5f                   	pop    %rdi
1400ebb8d:	c3                   	ret
1400ebb8e:	8b 4f 14             	mov    0x14(%rdi),%ecx
1400ebb91:	45 85 c0             	test   %r8d,%r8d
1400ebb94:	75 6d                	jne    0x1400ebc03
1400ebb96:	3b d9                	cmp    %ecx,%ebx
1400ebb98:	0f 8e cc 00 00 00    	jle    0x1400ebc6a
1400ebb9e:	66 90                	xchg   %ax,%ax
1400ebba0:	81 f9 ff ff ff 7f    	cmp    $0x7fffffff,%ecx
1400ebba6:	7d 22                	jge    0x1400ebbca
1400ebba8:	81 f9 55 55 55 55    	cmp    $0x55555555,%ecx
1400ebbae:	7d 0b                	jge    0x1400ebbbb
1400ebbb0:	8b c1                	mov    %ecx,%eax
1400ebbb2:	99                   	cltd
1400ebbb3:	2b c2                	sub    %edx,%eax
1400ebbb5:	d1 f8                	sar    $1,%eax
1400ebbb7:	03 c8                	add    %eax,%ecx
1400ebbb9:	eb 05                	jmp    0x1400ebbc0
1400ebbbb:	b9 ff ff ff 7f       	mov    $0x7fffffff,%ecx
1400ebbc0:	3b cb                	cmp    %ebx,%ecx
1400ebbc2:	7c dc                	jl     0x1400ebba0
1400ebbc4:	8b d9                	mov    %ecx,%ebx
1400ebbc6:	85 c9                	test   %ecx,%ecx
1400ebbc8:	75 3d                	jne    0x1400ebc07
1400ebbca:	e8 a1 b4 03 00       	call   0x140127070
1400ebbcf:	4c 8d 05 2a 36 20 00 	lea    0x20362a(%rip),%r8        # 0x1402ef200
1400ebbd6:	ba d0 00 00 00       	mov    $0xd0,%edx
1400ebbdb:	48 8d 0d de 35 20 00 	lea    0x2035de(%rip),%rcx        # 0x1402ef1c0
1400ebbe2:	e8 a9 b5 03 00       	call   0x140127190
1400ebbe7:	45 33 c0             	xor    %r8d,%r8d
1400ebbea:	41 8d 50 72          	lea    0x72(%r8),%edx
1400ebbee:	8d 4a 9d             	lea    -0x63(%rdx),%ecx
1400ebbf1:	e8 9a b6 03 00       	call   0x140127290
1400ebbf6:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1400ebbfb:	33 c0                	xor    %eax,%eax
1400ebbfd:	48 83 c4 20          	add    $0x20,%rsp
1400ebc01:	5f                   	pop    %rdi
1400ebc02:	c3                   	ret
1400ebc03:	3b d9                	cmp    %ecx,%ebx
1400ebc05:	74 63                	je     0x1400ebc6a
1400ebc07:	48 63 d3             	movslq %ebx,%rdx
1400ebc0a:	4c 8d 05 af 35 20 00 	lea    0x2035af(%rip),%r8        # 0x1402ef1c0
1400ebc11:	48 c1 e2 03          	shl    $0x3,%rdx
1400ebc15:	41 b9 d7 00 00 00    	mov    $0xd7,%r9d
1400ebc1b:	49 8b ca             	mov    %r10,%rcx
1400ebc1e:	e8 cd 01 00 00       	call   0x1400ebdf0
1400ebc23:	48 85 c0             	test   %rax,%rax
1400ebc26:	75 3b                	jne    0x1400ebc63
1400ebc28:	e8 43 b4 03 00       	call   0x140127070
1400ebc2d:	4c 8d 05 cc 35 20 00 	lea    0x2035cc(%rip),%r8        # 0x1402ef200
1400ebc34:	ba d9 00 00 00       	mov    $0xd9,%edx
1400ebc39:	48 8d 0d 80 35 20 00 	lea    0x203580(%rip),%rcx        # 0x1402ef1c0
1400ebc40:	e8 4b b5 03 00       	call   0x140127190
1400ebc45:	45 33 c0             	xor    %r8d,%r8d
1400ebc48:	ba 00 01 0c 00       	mov    $0xc0100,%edx
1400ebc4d:	41 8d 48 0f          	lea    0xf(%r8),%ecx
1400ebc51:	e8 3a b6 03 00       	call   0x140127290
1400ebc56:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1400ebc5b:	33 c0                	xor    %eax,%eax
1400ebc5d:	48 83 c4 20          	add    $0x20,%rsp
1400ebc61:	5f                   	pop    %rdi
1400ebc62:	c3                   	ret
1400ebc63:	48 89 47 08          	mov    %rax,0x8(%rdi)
1400ebc67:	89 5f 14             	mov    %ebx,0x14(%rdi)
1400ebc6a:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1400ebc6f:	b8 01 00 00 00       	mov    $0x1,%eax
1400ebc74:	48 83 c4 20          	add    $0x20,%rsp
1400ebc78:	5f                   	pop    %rdi
1400ebc79:	c3                   	ret
1400ebc7a:	cc                   	int3
1400ebc7b:	cc                   	int3
1400ebc7c:	cc                   	int3
1400ebc7d:	cc                   	int3
1400ebc7e:	cc                   	int3
1400ebc7f:	cc                   	int3
1400ebc80:	b8 28 00 00 00       	mov    $0x28,%eax
1400ebc85:	e8 a6 4e 1c 00       	call   0x1402b0b30
1400ebc8a:	48 2b e0             	sub    %rax,%rsp
1400ebc8d:	83 f9 09             	cmp    $0x9,%ecx
1400ebc90:	0f 87 9d 00 00 00    	ja     0x1400ebd33
1400ebc96:	48 63 c1             	movslq %ecx,%rax
1400ebc99:	48 8d 15 60 43 f1 ff 	lea    -0xebca0(%rip),%rdx        # 0x140000000
1400ebca0:	8b 8c 82 40 bd 0e 00 	mov    0xebd40(%rdx,%rax,4),%ecx
1400ebca7:	48 03 ca             	add    %rdx,%rcx
1400ebcaa:	ff e1                	jmp    *%rcx
1400ebcac:	48 8d 05 0d 37 20 00 	lea    0x20370d(%rip),%rax        # 0x1402ef3c0
1400ebcb3:	48 83 c4 28          	add    $0x28,%rsp
1400ebcb7:	c3                   	ret
1400ebcb8:	48 8d 05 1d 37 20 00 	lea    0x20371d(%rip),%rax        # 0x1402ef3dc
1400ebcbf:	48 83 c4 28          	add    $0x28,%rsp
1400ebcc3:	c3                   	ret
1400ebcc4:	48 8d 05 1d 37 20 00 	lea    0x20371d(%rip),%rax        # 0x1402ef3e8
1400ebccb:	48 83 c4 28          	add    $0x28,%rsp
1400ebccf:	c3                   	ret
1400ebcd0:	48 8d 05 99 35 20 00 	lea    0x203599(%rip),%rax        # 0x1402ef270
1400ebcd7:	48 83 c4 28          	add    $0x28,%rsp
1400ebcdb:	c3                   	ret