14000599b:	48 89 42 08          	mov    %rax,0x8(%rdx)
14000599f:	48 8b c2             	mov    %rdx,%rax
1400059a2:	c3                   	ret
1400059a3:	cc                   	int3
1400059a4:	cc                   	int3
1400059a5:	cc                   	int3
1400059a6:	cc                   	int3
1400059a7:	cc                   	int3
1400059a8:	cc                   	int3
1400059a9:	cc                   	int3
1400059aa:	cc                   	int3
1400059ab:	cc                   	int3
1400059ac:	cc                   	int3
1400059ad:	cc                   	int3
1400059ae:	cc                   	int3
1400059af:	cc                   	int3
1400059b0:	40 53                	rex push %rbx
1400059b2:	48 83 ec 30          	sub    $0x30,%rsp
1400059b6:	44 8b 41 08          	mov    0x8(%rcx),%r8d
1400059ba:	48 8b d9             	mov    %rcx,%rbx
1400059bd:	b9 00 00 00 10       	mov    $0x10000000,%ecx
1400059c2:	33 d2                	xor    %edx,%edx
1400059c4:	ff 15 96 68 03 00    	call   *0x36896(%rip)        # 0x14003c260
1400059ca:	48 89 43 50          	mov    %rax,0x50(%rbx)
1400059ce:	48 85 c0             	test   %rax,%rax
1400059d1:	75 08                	jne    0x1400059db
1400059d3:	32 c0                	xor    %al,%al
1400059d5:	48 83 c4 30          	add    $0x30,%rsp
1400059d9:	5b                   	pop    %rbx
1400059da:	c3                   	ret
1400059db:	48 8d 4c 24 48       	lea    0x48(%rsp),%rcx
1400059e0:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
1400059e5:	4c 8d 4c 24 50       	lea    0x50(%rsp),%r9
1400059ea:	48 8b c8             	mov    %rax,%rcx
1400059ed:	4c 8d 44 24 58       	lea    0x58(%rsp),%r8
1400059f2:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
1400059f7:	ff 15 5b 68 03 00    	call   *0x3685b(%rip)        # 0x14003c258
1400059fd:	85 c0                	test   %eax,%eax
1400059ff:	74 09                	je     0x140005a0a
140005a01:	48 8b 44 24 40       	mov    0x40(%rsp),%rax
140005a06:	48 89 43 78          	mov    %rax,0x78(%rbx)
140005a0a:	8b 43 78             	mov    0x78(%rbx),%eax
140005a0d:	45 33 c9             	xor    %r9d,%r9d
140005a10:	45 33 c0             	xor    %r8d,%r8d
140005a13:	89 83 80 00 00 00    	mov    %eax,0x80(%rbx)
140005a19:	33 c9                	xor    %ecx,%ecx
140005a1b:	41 8d 51 01          	lea    0x1(%r9),%edx
140005a1f:	ff 15 0b 68 03 00    	call   *0x3680b(%rip)        # 0x14003c230
140005a25:	48 89 43 58          	mov    %rax,0x58(%rbx)
140005a29:	48 85 c0             	test   %rax,%rax
140005a2c:	74 a5                	je     0x1400059d3
140005a2e:	45 33 c9             	xor    %r9d,%r9d
140005a31:	45 33 c0             	xor    %r8d,%r8d
140005a34:	33 c9                	xor    %ecx,%ecx
140005a36:	41 8d 51 01          	lea    0x1(%r9),%edx
140005a3a:	ff 15 f0 67 03 00    	call   *0x367f0(%rip)        # 0x14003c230
140005a40:	48 85 c0             	test   %rax,%rax
140005a43:	48 89 43 60          	mov    %rax,0x60(%rbx)
140005a47:	0f 95 c0             	setne  %al
140005a4a:	48 83 c4 30          	add    $0x30,%rsp
140005a4e:	5b                   	pop    %rbx
140005a4f:	c3                   	ret
140005a50:	40 53                	rex push %rbx
140005a52:	56                   	push   %rsi
140005a53:	48 83 ec 38          	sub    $0x38,%rsp
140005a57:	48 8b 59 38          	mov    0x38(%rcx),%rbx
140005a5b:	48 8b f1             	mov    %rcx,%rsi
140005a5e:	48 81 fb 00 10 00 00 	cmp    $0x1000,%rbx
140005a65:	76 09                	jbe    0x140005a70
140005a67:	32 c0                	xor    %al,%al
140005a69:	48 83 c4 38          	add    $0x38,%rsp
140005a6d:	5e                   	pop    %rsi
140005a6e:	5b                   	pop    %rbx
140005a6f:	c3                   	ret
140005a70:	48 89 7c 24 60       	mov    %rdi,0x60(%rsp)
140005a75:	33 ff                	xor    %edi,%edi
140005a77:	4c 89 74 24 30       	mov    %r14,0x30(%rsp)
140005a7c:	4c 8b f3             	mov    %rbx,%r14
140005a7f:	49 c1 e6 08          	shl    $0x8,%r14
140005a83:	48 89 7c 24 50       	mov    %rdi,0x50(%rsp)
140005a88:	48 39 79 40          	cmp    %rdi,0x40(%rcx)
140005a8c:	75 65                	jne    0x140005af3
140005a8e:	48 c7 c1 ff ff ff ff 	mov    $0xffffffffffffffff,%rcx
140005a95:	48 89 6c 24 58       	mov    %rbp,0x58(%rsp)
140005a9a:	b8 00 01 00 00       	mov    $0x100,%eax
140005a9f:	48 f7 e3             	mul    %rbx
140005aa2:	48 0f 40 c1          	cmovo  %rcx,%rax
140005aa6:	48 8b c8             	mov    %rax,%rcx
140005aa9:	e8 b2 b7 ff ff       	call   0x140001260
140005aae:	48 8b e8             	mov    %rax,%rbp
140005ab1:	48 85 c0             	test   %rax,%rax
140005ab4:	74 23                	je     0x140005ad9
140005ab6:	48 8b c8             	mov    %rax,%rcx
140005ab9:	48 85 db             	test   %rbx,%rbx
140005abc:	74 1e                	je     0x140005adc
140005abe:	66 90                	xchg   %ax,%ax
140005ac0:	66 89 39             	mov    %di,(%rcx)
140005ac3:	66 89 b9 80 00 00 00 	mov    %di,0x80(%rcx)
140005aca:	48 8d 89 00 01 00 00 	lea    0x100(%rcx),%rcx
140005ad1:	48 83 eb 01          	sub    $0x1,%rbx
140005ad5:	75 e9                	jne    0x140005ac0
140005ad7:	eb 03                	jmp    0x140005adc
140005ad9:	48 8b ef             	mov    %rdi,%rbp
140005adc:	48 8b 4e 40          	mov    0x40(%rsi),%rcx
140005ae0:	48 3b e9             	cmp    %rcx,%rbp
140005ae3:	74 09                	je     0x140005aee
140005ae5:	e8 c6 b7 ff ff       	call   0x1400012b0
140005aea:	48 89 6e 40          	mov    %rbp,0x40(%rsi)
140005aee:	48 8b 6c 24 58       	mov    0x58(%rsp),%rbp
140005af3:	4c 8b 46 40          	mov    0x40(%rsi),%r8
140005af7:	48 8d 44 24 50       	lea    0x50(%rsp),%rax
140005afc:	48 8b 56 30          	mov    0x30(%rsi),%rdx
140005b00:	4d 8b ce             	mov    %r14,%r9
140005b03:	48 8b 4e 50          	mov    0x50(%rsi),%rcx
140005b07:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140005b0c:	ff 15 56 67 03 00    	call   *0x36756(%rip)        # 0x14003c268
140005b12:	85 c0                	test   %eax,%eax
140005b14:	75 11                	jne    0x140005b27
140005b16:	48 8b 7c 24 60       	mov    0x60(%rsp),%rdi
140005b1b:	4c 8b 74 24 30       	mov    0x30(%rsp),%r14
140005b20:	48 83 c4 38          	add    $0x38,%rsp
140005b24:	5e                   	pop    %rsi
140005b25:	5b                   	pop    %rbx
140005b26:	c3                   	ret
140005b27:	48 8b ce             	mov    %rsi,%rcx
140005b2a:	e8 21 00 00 00       	call   0x140005b50
140005b2f:	4c 39 74 24 50       	cmp    %r14,0x50(%rsp)
140005b34:	48 8b 7c 24 60       	mov    0x60(%rsp),%rdi
140005b39:	4c 8b 74 24 30       	mov    0x30(%rsp),%r14
140005b3e:	0f 94 c0             	sete   %al
140005b41:	48 83 c4 38          	add    $0x38,%rsp
140005b45:	5e                   	pop    %rsi
140005b46:	5b                   	pop    %rbx
140005b47:	c3                   	ret
140005b48:	cc                   	int3
140005b49:	cc                   	int3
140005b4a:	cc                   	int3
140005b4b:	cc                   	int3
140005b4c:	cc                   	int3
140005b4d:	cc                   	int3
140005b4e:	cc                   	int3
140005b4f:	cc                   	int3
140005b50:	40 53                	rex push %rbx
140005b52:	55                   	push   %rbp
140005b53:	56                   	push   %rsi
140005b54:	57                   	push   %rdi
140005b55:	41 56                	push   %r14
140005b57:	48 83 ec 20          	sub    $0x20,%rsp
140005b5b:	48 8b f1             	mov    %rcx,%rsi
140005b5e:	33 db                	xor    %ebx,%ebx
140005b60:	48 8d 4c 24 50       	lea    0x50(%rsp),%rcx
140005b65:	48 89 5c 24 50       	mov    %rbx,0x50(%rsp)
140005b6a:	ff 15 00 67 03 00    	call   *0x36700(%rip)        # 0x14003c270
140005b70:	8b 46 7c             	mov    0x7c(%rsi),%eax
140005b73:	44 8b cb             	mov    %ebx,%r9d
140005b76:	44 8b 5e 38          	mov    0x38(%rsi),%r11d
140005b7a:	89 44 24 64          	mov    %eax,0x64(%rsp)
140005b7e:	8b 46 78             	mov    0x78(%rsi),%eax
140005b81:	89 44 24 60          	mov    %eax,0x60(%rsp)
140005b85:	8b 44 24 54          	mov    0x54(%rsp),%eax
140005b89:	89 44 24 5c          	mov    %eax,0x5c(%rsp)
140005b8d:	8b 44 24 50          	mov    0x50(%rsp),%eax
140005b91:	89 44 24 58          	mov    %eax,0x58(%rsp)
140005b95:	48 b8 cd cc cc cc cc 	movabs $0xcccccccccccccccd,%rax
140005b9c:	cc cc cc
140005b9f:	48 8b 4c 24 58       	mov    0x58(%rsp),%rcx
140005ba4:	48 2b 4c 24 60       	sub    0x60(%rsp),%rcx
140005ba9:	48 f7 e1             	mul    %rcx
140005bac:	48 b8 77 be 9f 1a 2f 	movabs $0x624dd2f1a9fbe77,%rax
140005bb3:	dd 24 06
140005bb6:	48 8b fa             	mov    %rdx,%rdi
140005bb9:	48 c1 ef 03          	shr    $0x3,%rdi
140005bbd:	48 f7 e7             	mul    %rdi
140005bc0:	48 2b fa             	sub    %rdx,%rdi
140005bc3:	48 d1 ef             	shr    $1,%rdi
140005bc6:	48 03 fa             	add    %rdx,%rdi
140005bc9:	48 c1 ef 09          	shr    $0x9,%rdi
140005bcd:	45 85 db             	test   %r11d,%r11d
140005bd0:	7e 62                	jle    0x140005c34
140005bd2:	4c 8b 56 40          	mov    0x40(%rsi),%r10
140005bd6:	48 8d 2d 43 6e 03 00 	lea    0x36e43(%rip),%rbp        # 0x14003ca20
140005bdd:	0f 1f 00             	nopl   (%rax)
140005be0:	49 63 c1             	movslq %r9d,%rax
140005be3:	4c 8b c5             	mov    %rbp,%r8
140005be6:	48 c1 e0 08          	shl    $0x8,%rax
140005bea:	49 03 c2             	add    %r10,%rax
140005bed:	4c 2b c0             	sub    %rax,%r8
140005bf0:	0f b7 10             	movzwl (%rax),%edx
140005bf3:	42 0f b7 0c 00       	movzwl (%rax,%r8,1),%ecx
140005bf8:	2b d1                	sub    %ecx,%edx
140005bfa:	75 08                	jne    0x140005c04
140005bfc:	48 83 c0 02          	add    $0x2,%rax
140005c00:	85 c9                	test   %ecx,%ecx
140005c02:	75 ec                	jne    0x140005bf0
140005c04:	85 d2                	test   %edx,%edx
140005c06:	74 0a                	je     0x140005c12
140005c08:	41 ff c1             	inc    %r9d
140005c0b:	45 3b cb             	cmp    %r11d,%r9d
140005c0e:	7c d0                	jl     0x140005be0
140005c10:	eb 22                	jmp    0x140005c34
140005c12:	49 63 d1             	movslq %r9d,%rdx
140005c15:	48 c1 e2 08          	shl    $0x8,%rdx
140005c19:	49 03 d2             	add    %r10,%rdx
140005c1c:	74 16                	je     0x140005c34
140005c1e:	41 b9 0a 00 00 00    	mov    $0xa,%r9d
140005c24:	48 83 ea 80          	sub    $0xffffffffffffff80,%rdx
140005c28:	48 8b cf             	mov    %rdi,%rcx
140005c2b:	45 8d 41 36          	lea    0x36(%r9),%r8d
140005c2f:	e8 1c 09 01 00       	call   0x140016550
140005c34:	44 8b 56 38          	mov    0x38(%rsi),%r10d
140005c38:	44 8b cb             	mov    %ebx,%r9d
140005c3b:	48 bd bd 42 7a e5 d5 	movabs $0xd6bf94d5e57a42bd,%rbp
140005c42:	94 bf d6
140005c45:	49 be 00 80 c1 2a 21 	movabs $0xfe624e212ac18000,%r14
140005c4c:	4e 62 fe
140005c4f:	45 85 d2             	test   %r10d,%r10d
140005c52:	0f 8e 9f 00 00 00    	jle    0x140005cf7
140005c58:	4c 8b 5e 40          	mov    0x40(%rsi),%r11
140005c5c:	48 8d 3d cd 6d 03 00 	lea    0x36dcd(%rip),%rdi        # 0x14003ca30
140005c63:	0f 1f 40 00          	nopl   0x0(%rax)
140005c67:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
140005c6e:	00 00
140005c70:	49 63 c1             	movslq %r9d,%rax
140005c73:	4c 8b c7             	mov    %rdi,%r8
140005c76:	48 c1 e0 08          	shl    $0x8,%rax
140005c7a:	49 03 c3             	add    %r11,%rax
140005c7d:	4c 2b c0             	sub    %rax,%r8
140005c80:	0f b7 10             	movzwl (%rax),%edx
140005c83:	42 0f b7 0c 00       	movzwl (%rax,%r8,1),%ecx
140005c88:	2b d1                	sub    %ecx,%edx
140005c8a:	75 08                	jne    0x140005c94
140005c8c:	48 83 c0 02          	add    $0x2,%rax
140005c90:	85 c9                	test   %ecx,%ecx
140005c92:	75 ec                	jne    0x140005c80
140005c94:	85 d2                	test   %edx,%edx
140005c96:	74 0a                	je     0x140005ca2
140005c98:	41 ff c1             	inc    %r9d
140005c9b:	45 3b ca             	cmp    %r10d,%r9d
140005c9e:	7c d0                	jl     0x140005c70
140005ca0:	eb 55                	jmp    0x140005cf7
140005ca2:	4d 63 d1             	movslq %r9d,%r10
140005ca5:	49 c1 e2 08          	shl    $0x8,%r10
140005ca9:	4d 03 d3             	add    %r11,%r10
140005cac:	74 49                	je     0x140005cf7
140005cae:	48 8b 46 78          	mov    0x78(%rsi),%rax
140005cb2:	41 b9 0a 00 00 00    	mov    $0xa,%r9d
140005cb8:	48 8b c8             	mov    %rax,%rcx
140005cbb:	89 44 24 58          	mov    %eax,0x58(%rsp)
140005cbf:	48 c1 e9 20          	shr    $0x20,%rcx
140005cc3:	48 8b c5             	mov    %rbp,%rax
140005cc6:	89 4c 24 5c          	mov    %ecx,0x5c(%rsp)
140005cca:	4c 8b 44 24 58       	mov    0x58(%rsp),%r8
140005ccf:	4d 03 c6             	add    %r14,%r8
140005cd2:	49 f7 e8             	imul   %r8
140005cd5:	49 8d 0c 10          	lea    (%r8,%rdx,1),%rcx
140005cd9:	48 c1 f9 17          	sar    $0x17,%rcx
140005cdd:	45 8d 41 36          	lea    0x36(%r9),%r8d
140005ce1:	48 8b c1             	mov    %rcx,%rax
140005ce4:	49 8d 92 80 00 00 00 	lea    0x80(%r10),%rdx
140005ceb:	48 c1 e8 3f          	shr    $0x3f,%rax
140005cef:	48 03 c8             	add    %rax,%rcx
140005cf2:	e8 59 08 01 00       	call   0x140016550
140005cf7:	44 8b 4e 38          	mov    0x38(%rsi),%r9d
140005cfb:	45 85 c9             	test   %r9d,%r9d
140005cfe:	0f 8e 98 00 00 00    	jle    0x140005d9c
140005d04:	4c 8b 56 40          	mov    0x40(%rsi),%r10
140005d08:	4c 8d 1d 39 6d 03 00 	lea    0x36d39(%rip),%r11        # 0x14003ca48
140005d0f:	90                   	nop
140005d10:	48 63 c3             	movslq %ebx,%rax
140005d13:	4d 8b c3             	mov    %r11,%r8
140005d16:	48 c1 e0 08          	shl    $0x8,%rax
140005d1a:	49 03 c2             	add    %r10,%rax
140005d1d:	4c 2b c0             	sub    %rax,%r8
140005d20:	0f b7 10             	movzwl (%rax),%edx
140005d23:	42 0f b7 0c 00       	movzwl (%rax,%r8,1),%ecx
140005d28:	2b d1                	sub    %ecx,%edx
140005d2a:	75 08                	jne    0x140005d34
140005d2c:	48 83 c0 02          	add    $0x2,%rax
140005d30:	85 c9                	test   %ecx,%ecx
140005d32:	75 ec                	jne    0x140005d20
140005d34:	85 d2                	test   %edx,%edx
140005d36:	74 12                	je     0x140005d4a
140005d38:	ff c3                	inc    %ebx
140005d3a:	41 3b d9             	cmp    %r9d,%ebx
140005d3d:	7c d1                	jl     0x140005d10
140005d3f:	48 83 c4 20          	add    $0x20,%rsp
140005d43:	41 5e                	pop    %r14
140005d45:	5f                   	pop    %rdi
140005d46:	5e                   	pop    %rsi
140005d47:	5d                   	pop    %rbp
140005d48:	5b                   	pop    %rbx
140005d49:	c3                   	ret
140005d4a:	4c 63 db             	movslq %ebx,%r11
140005d4d:	49 c1 e3 08          	shl    $0x8,%r11
140005d51:	4d 03 da             	add    %r10,%r11
140005d54:	74 46                	je     0x140005d9c
140005d56:	8b 4c 24 54          	mov    0x54(%rsp),%ecx
140005d5a:	41 b9 0a 00 00 00    	mov    $0xa,%r9d
140005d60:	89 4c 24 5c          	mov    %ecx,0x5c(%rsp)
140005d64:	48 8b c5             	mov    %rbp,%rax
140005d67:	8b 4c 24 50          	mov    0x50(%rsp),%ecx
140005d6b:	89 4c 24 58          	mov    %ecx,0x58(%rsp)
140005d6f:	4c 8b 54 24 58       	mov    0x58(%rsp),%r10
140005d74:	45 8d 41 36          	lea    0x36(%r9),%r8d
140005d78:	4d 03 d6             	add    %r14,%r10
140005d7b:	49 f7 ea             	imul   %r10
140005d7e:	49 8d 0c 12          	lea    (%r10,%rdx,1),%rcx
140005d82:	48 c1 f9 17          	sar    $0x17,%rcx
140005d86:	49 8d 93 80 00 00 00 	lea    0x80(%r11),%rdx
140005d8d:	48 8b c1             	mov    %rcx,%rax
140005d90:	48 c1 e8 3f          	shr    $0x3f,%rax
140005d94:	48 03 c8             	add    %rax,%rcx
140005d97:	e8 b4 07 01 00       	call   0x140016550
140005d9c:	48 83 c4 20          	add    $0x20,%rsp
140005da0:	41 5e                	pop    %r14
140005da2:	5f                   	pop    %rdi
140005da3:	5e                   	pop    %rsi
140005da4:	5d                   	pop    %rbp
140005da5:	5b                   	pop    %rbx
140005da6:	c3                   	ret
140005da7:	cc                   	int3
140005da8:	cc                   	int3
140005da9:	cc                   	int3
140005daa:	cc                   	int3
140005dab:	cc                   	int3
140005dac:	cc                   	int3
140005dad:	cc                   	int3
140005dae:	cc                   	int3
140005daf:	cc                   	int3
140005db0:	40 53                	rex push %rbx
140005db2:	48 83 ec 20          	sub    $0x20,%rsp
140005db6:	48 8b d9             	mov    %rcx,%rbx
140005db9:	48 8b 49 68          	mov    0x68(%rcx),%rcx
140005dbd:	48 85 c9             	test   %rcx,%rcx
140005dc0:	74 12                	je     0x140005dd4
140005dc2:	48 83 ca ff          	or     $0xffffffffffffffff,%rdx
140005dc6:	ff 15 84 64 03 00    	call   *0x36484(%rip)        # 0x14003c250
140005dcc:	48 c7 43 68 00 00 00 	movq   $0x0,0x68(%rbx)
140005dd3:	00
140005dd4:	48 83 c4 20          	add    $0x20,%rsp
140005dd8:	5b                   	pop    %rbx
140005dd9:	c3                   	ret
140005dda:	cc                   	int3
140005ddb:	cc                   	int3
140005ddc:	cc                   	int3
140005ddd:	cc                   	int3
140005dde:	cc                   	int3
140005ddf:	cc                   	int3
140005de0:	40 53                	rex push %rbx
140005de2:	48 83 ec 20          	sub    $0x20,%rsp