1408948dc:	48 83 c4 40          	add    $0x40,%rsp
1408948e0:	41 5f                	pop    %r15
1408948e2:	41 5e                	pop    %r14
1408948e4:	41 5c                	pop    %r12
1408948e6:	5f                   	pop    %rdi
1408948e7:	5e                   	pop    %rsi
1408948e8:	5b                   	pop    %rbx
1408948e9:	5d                   	pop    %rbp
1408948ea:	c3                   	ret
1408948eb:	44 8b 5e 34          	mov    0x34(%rsi),%r11d
1408948ef:	ff c3                	inc    %ebx
1408948f1:	8b 3d 09 8f b1 00    	mov    0xb18f09(%rip),%edi        # 0x1413ad800
1408948f7:	45 33 ff             	xor    %r15d,%r15d
1408948fa:	44 8b d3             	mov    %ebx,%r10d
1408948fd:	44 8b c3             	mov    %ebx,%r8d
140894900:	44 8b cb             	mov    %ebx,%r9d
140894903:	8b c3                	mov    %ebx,%eax
140894905:	8b d3                	mov    %ebx,%edx
140894907:	8b cb                	mov    %ebx,%ecx
140894909:	83 fb 02             	cmp    $0x2,%ebx
14089490c:	73 05                	jae    0x140894913
14089490e:	41 8b cf             	mov    %r15d,%ecx
140894911:	eb 3c                	jmp    0x14089494f
140894913:	44 8d 42 fe          	lea    -0x2(%rdx),%r8d
140894917:	b8 cd cc cc cc       	mov    $0xcccccccd,%eax
14089491c:	f7 66 38             	mull   0x38(%rsi)
14089491f:	41 8b c0             	mov    %r8d,%eax
140894922:	8b ca                	mov    %edx,%ecx
140894924:	33 d2                	xor    %edx,%edx
140894926:	c1 e9 02             	shr    $0x2,%ecx
140894929:	ff c1                	inc    %ecx
14089492b:	f7 f1                	div    %ecx
14089492d:	8b c7                	mov    %edi,%eax
14089492f:	41 8b cf             	mov    %r15d,%ecx
140894932:	44 2b c2             	sub    %edx,%r8d
140894935:	33 d2                	xor    %edx,%edx
140894937:	41 f7 f3             	div    %r11d
14089493a:	ff c8                	dec    %eax
14089493c:	44 3b c0             	cmp    %eax,%r8d
14089493f:	41 8b c1             	mov    %r9d,%eax
140894942:	0f 94 c1             	sete   %cl
140894945:	41 83 c0 02          	add    $0x2,%r8d
140894949:	41 03 c8             	add    %r8d,%ecx
14089494c:	45 8b c2             	mov    %r10d,%r8d
14089494f:	3b c1                	cmp    %ecx,%eax
140894951:	74 0e                	je     0x140894961
140894953:	33 d2                	xor    %edx,%edx
140894955:	8b c7                	mov    %edi,%eax
140894957:	41 f7 f3             	div    %r11d
14089495a:	ff c0                	inc    %eax
14089495c:	44 3b c0             	cmp    %eax,%r8d
14089495f:	75 04                	jne    0x140894965
140894961:	ff c3                	inc    %ebx
140894963:	eb 95                	jmp    0x1408948fa
140894965:	44 8b cb             	mov    %ebx,%r9d
140894968:	c6 44 24 20 01       	movb   $0x1,0x20(%rsp)
14089496d:	4c 8d 45 58          	lea    0x58(%rbp),%r8
140894971:	48 8b ce             	mov    %rsi,%rcx
140894974:	48 8d 55 f8          	lea    -0x8(%rbp),%rdx
140894978:	e8 93 9f ff ff       	call   0x14088e910
14089497d:	89 45 40             	mov    %eax,0x40(%rbp)
140894980:	85 c0                	test   %eax,%eax
140894982:	0f 85 9e 02 00 00    	jne    0x140894c26
140894988:	39 5d 58             	cmp    %ebx,0x58(%rbp)
14089498b:	0f 84 91 01 00 00    	je     0x140894b22
140894991:	48 8b 4e 10          	mov    0x10(%rsi),%rcx
140894995:	44 88 7d 40          	mov    %r15b,0x40(%rbp)
140894999:	44 89 7d f0          	mov    %r15d,-0x10(%rbp)
14089499d:	48 85 c9             	test   %rcx,%rcx
1408949a0:	74 2a                	je     0x1408949cc
1408949a2:	45 33 c0             	xor    %r8d,%r8d
1408949a5:	33 d2                	xor    %edx,%edx
1408949a7:	e8 f4 f9 02 00       	call   0x1408c43a0
1408949ac:	48 8b 4d f8          	mov    -0x8(%rbp),%rcx
1408949b0:	8b f8                	mov    %eax,%edi
1408949b2:	e8 29 a7 02 00       	call   0x1408bf0e0
1408949b7:	85 ff                	test   %edi,%edi
1408949b9:	74 1a                	je     0x1408949d5
1408949bb:	8b c7                	mov    %edi,%eax
1408949bd:	48 83 c4 40          	add    $0x40,%rsp
1408949c1:	41 5f                	pop    %r15
1408949c3:	41 5e                	pop    %r14
1408949c5:	41 5c                	pop    %r12
1408949c7:	5f                   	pop    %rdi
1408949c8:	5e                   	pop    %rsi
1408949c9:	5b                   	pop    %rbx
1408949ca:	5d                   	pop    %rbp
1408949cb:	c3                   	ret
1408949cc:	48 8b 4d f8          	mov    -0x8(%rbp),%rcx
1408949d0:	e8 0b a7 02 00       	call   0x1408bf0e0
1408949d5:	48 8b 0e             	mov    (%rsi),%rcx
1408949d8:	4c 8d 45 f8          	lea    -0x8(%rbp),%r8
1408949dc:	45 33 c9             	xor    %r9d,%r9d
1408949df:	8b d3                	mov    %ebx,%edx
1408949e1:	48 8b 81 10 01 00 00 	mov    0x110(%rcx),%rax
1408949e8:	ff 15 32 f0 6e 00    	call   *0x6ef032(%rip)        # 0x140f83a20
1408949ee:	85 c0                	test   %eax,%eax
1408949f0:	0f 85 30 02 00 00    	jne    0x140894c26
1408949f6:	48 8b 4d f8          	mov    -0x8(%rbp),%rcx
1408949fa:	ba 64 00 00 00       	mov    $0x64,%edx
1408949ff:	48 8b 79 10          	mov    0x10(%rcx),%rdi
140894a03:	3b 5f 04             	cmp    0x4(%rdi),%ebx
140894a06:	74 1f                	je     0x140894a27
140894a08:	48 8b 41 08          	mov    0x8(%rcx),%rax
140894a0c:	83 fb 01             	cmp    $0x1,%ebx
140894a0f:	48 89 47 50          	mov    %rax,0x50(%rdi)
140894a13:	41 8b c7             	mov    %r15d,%eax
140894a16:	0f 44 c2             	cmove  %edx,%eax
140894a19:	48 89 4f 70          	mov    %rcx,0x70(%rdi)
140894a1d:	88 47 09             	mov    %al,0x9(%rdi)
140894a20:	48 89 77 48          	mov    %rsi,0x48(%rdi)
140894a24:	89 5f 04             	mov    %ebx,0x4(%rdi)
140894a27:	4c 8d 4d f0          	lea    -0x10(%rbp),%r9
140894a2b:	8b d3                	mov    %ebx,%edx
140894a2d:	4c 8d 45 40          	lea    0x40(%rbp),%r8
140894a31:	48 8b ce             	mov    %rsi,%rcx
140894a34:	e8 57 88 02 00       	call   0x1408bd290
140894a39:	80 7d 40 01          	cmpb   $0x1,0x40(%rbp)
140894a3d:	44 8b e0             	mov    %eax,%r12d
140894a40:	74 06                	je     0x140894a48
140894a42:	80 7d 40 02          	cmpb   $0x2,0x40(%rbp)
140894a46:	75 0d                	jne    0x140894a55
140894a48:	b9 29 2b 01 00       	mov    $0x12b29,%ecx
140894a4d:	e8 9e fa 03 00       	call   0x1408d44f0
140894a52:	44 8b e0             	mov    %eax,%r12d
140894a55:	45 85 e4             	test   %r12d,%r12d
140894a58:	74 1a                	je     0x140894a74
140894a5a:	48 8b cf             	mov    %rdi,%rcx
140894a5d:	e8 7e a6 02 00       	call   0x1408bf0e0
140894a62:	41 8b c4             	mov    %r12d,%eax
140894a65:	48 83 c4 40          	add    $0x40,%rsp
140894a69:	41 5f                	pop    %r15
140894a6b:	41 5e                	pop    %r14
140894a6d:	41 5c                	pop    %r12
140894a6f:	5f                   	pop    %rdi
140894a70:	5e                   	pop    %rsi
140894a71:	5b                   	pop    %rbx
140894a72:	5d                   	pop    %rbp
140894a73:	c3                   	ret
140894a74:	8b 45 58             	mov    0x58(%rbp),%eax
140894a77:	48 8b d7             	mov    %rdi,%rdx
140894a7a:	44 8b 4d f0          	mov    -0x10(%rbp),%r9d
140894a7e:	48 8b ce             	mov    %rsi,%rcx
140894a81:	44 0f b6 45 40       	movzbl 0x40(%rbp),%r8d
140894a86:	44 89 7c 24 28       	mov    %r15d,0x28(%rsp)
140894a8b:	89 44 24 20          	mov    %eax,0x20(%rsp)
140894a8f:	e8 4c a7 02 00       	call   0x1408bf1e0
140894a94:	48 8b cf             	mov    %rdi,%rcx
140894a97:	44 8b e0             	mov    %eax,%r12d
140894a9a:	e8 41 a6 02 00       	call   0x1408bf0e0
140894a9f:	45 85 e4             	test   %r12d,%r12d
140894aa2:	75 be                	jne    0x140894a62
140894aa4:	48 8b 0e             	mov    (%rsi),%rcx
140894aa7:	4c 8d 45 40          	lea    0x40(%rbp),%r8
140894aab:	45 33 c9             	xor    %r9d,%r9d
140894aae:	8b d3                	mov    %ebx,%edx
140894ab0:	48 8b 81 10 01 00 00 	mov    0x110(%rcx),%rax
140894ab7:	ff 15 63 ef 6e 00    	call   *0x6eef63(%rip)        # 0x140f83a20
140894abd:	85 c0                	test   %eax,%eax
140894abf:	0f 85 61 01 00 00    	jne    0x140894c26
140894ac5:	48 8b 4d 40          	mov    0x40(%rbp),%rcx
140894ac9:	48 8b 79 10          	mov    0x10(%rcx),%rdi
140894acd:	3b 5f 04             	cmp    0x4(%rdi),%ebx
140894ad0:	74 23                	je     0x140894af5
140894ad2:	48 8b 41 08          	mov    0x8(%rcx),%rax
140894ad6:	83 fb 01             	cmp    $0x1,%ebx
140894ad9:	48 89 47 50          	mov    %rax,0x50(%rdi)
140894add:	b8 64 00 00 00       	mov    $0x64,%eax
140894ae2:	44 0f 44 f8          	cmove  %eax,%r15d
140894ae6:	48 89 4f 70          	mov    %rcx,0x70(%rdi)
140894aea:	44 88 7f 09          	mov    %r15b,0x9(%rdi)
140894aee:	48 89 77 48          	mov    %rsi,0x48(%rdi)
140894af2:	89 5f 04             	mov    %ebx,0x4(%rdi)
140894af5:	48 8b 4f 70          	mov    0x70(%rdi),%rcx
140894af9:	e8 e2 be 05 00       	call   0x1408f09e0
140894afe:	89 45 40             	mov    %eax,0x40(%rbp)
140894b01:	44 8b f8             	mov    %eax,%r15d
140894b04:	85 c0                	test   %eax,%eax
140894b06:	74 20                	je     0x140894b28
140894b08:	48 8b cf             	mov    %rdi,%rcx
140894b0b:	e8 d0 a5 02 00       	call   0x1408bf0e0
140894b10:	41 8b c7             	mov    %r15d,%eax
140894b13:	48 83 c4 40          	add    $0x40,%rsp
140894b17:	41 5f                	pop    %r15
140894b19:	41 5e                	pop    %r14
140894b1b:	41 5c                	pop    %r12
140894b1d:	5f                   	pop    %rdi
140894b1e:	5e                   	pop    %rsi
140894b1f:	5b                   	pop    %rbx
140894b20:	5d                   	pop    %rbp
140894b21:	c3                   	ret
140894b22:	48 8b 7d f8          	mov    -0x8(%rbp),%rdi
140894b26:	eb 04                	jmp    0x140894b2c
140894b28:	44 8b 65 50          	mov    0x50(%rbp),%r12d
140894b2c:	48 8d 45 40          	lea    0x40(%rbp),%rax
140894b30:	45 33 c9             	xor    %r9d,%r9d
140894b33:	41 b0 01             	mov    $0x1,%r8b
140894b36:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140894b3b:	8b d3                	mov    %ebx,%edx
140894b3d:	48 8b ce             	mov    %rsi,%rcx
140894b40:	e8 5b 89 02 00       	call   0x1408bd4a0
140894b45:	8b 75 40             	mov    0x40(%rbp),%esi
140894b48:	85 f6                	test   %esi,%esi
140894b4a:	75 16                	jne    0x140894b62
140894b4c:	44 8b c3             	mov    %ebx,%r8d
140894b4f:	ba 04 00 00 00       	mov    $0x4,%edx
140894b54:	49 8b ce             	mov    %r14,%rcx
140894b57:	e8 94 bc 03 00       	call   0x1408d07f0
140894b5c:	8b f0                	mov    %eax,%esi
140894b5e:	85 c0                	test   %eax,%eax
140894b60:	74 45                	je     0x140894ba7
140894b62:	48 8b cf             	mov    %rdi,%rcx
140894b65:	e8 76 a5 02 00       	call   0x1408bf0e0
140894b6a:	8b c6                	mov    %esi,%eax
140894b6c:	48 83 c4 40          	add    $0x40,%rsp
140894b70:	41 5f                	pop    %r15
140894b72:	41 5e                	pop    %r14
140894b74:	41 5c                	pop    %r12
140894b76:	5f                   	pop    %rdi
140894b77:	5e                   	pop    %rsi
140894b78:	5b                   	pop    %rbx
140894b79:	5d                   	pop    %rbp
140894b7a:	c3                   	ret
140894b7b:	41 b9 01 00 00 00    	mov    $0x1,%r9d
140894b81:	c6 44 24 20 00       	movb   $0x0,0x20(%rsp)
140894b86:	4c 8d 45 40          	lea    0x40(%rbp),%r8
140894b8a:	48 8b ce             	mov    %rsi,%rcx
140894b8d:	48 8d 55 58          	lea    0x58(%rbp),%rdx
140894b91:	e8 7a 9d ff ff       	call   0x14088e910
140894b96:	85 c0                	test   %eax,%eax
140894b98:	0f 85 88 00 00 00    	jne    0x140894c26
140894b9e:	8b 5d 40             	mov    0x40(%rbp),%ebx
140894ba1:	48 8b 7d 58          	mov    0x58(%rbp),%rdi
140894ba5:	eb 04                	jmp    0x140894bab
140894ba7:	4c 8b 7d 48          	mov    0x48(%rbp),%r15
140894bab:	ba 0d 00 00 00       	mov    $0xd,%edx
140894bb0:	b8 0a 00 00 00       	mov    $0xa,%eax
140894bb5:	41 f6 c4 01          	test   $0x1,%r12b
140894bb9:	48 8b cf             	mov    %rdi,%rcx
140894bbc:	0f 44 d0             	cmove  %eax,%edx
140894bbf:	e8 ac ac 0a 00       	call   0x14093f870
140894bc4:	4c 8b 47 70          	mov    0x70(%rdi),%r8
140894bc8:	4d 85 c0             	test   %r8,%r8
140894bcb:	74 54                	je     0x140894c21
140894bcd:	41 f6 40 34 20       	testb  $0x20,0x34(%r8)
140894bd2:	74 45                	je     0x140894c19
140894bd4:	4d 8b 50 28          	mov    0x28(%r8),%r10
140894bd8:	41 ff 8a 98 00 00 00 	decl   0x98(%r10)
140894bdf:	49 8b 82 a8 00 00 00 	mov    0xa8(%r10),%rax
140894be6:	49 89 40 20          	mov    %rax,0x20(%r8)
140894bea:	49 8b 4a 48          	mov    0x48(%r10),%rcx
140894bee:	4d 89 82 a8 00 00 00 	mov    %r8,0xa8(%r10)
140894bf5:	41 8b 50 30          	mov    0x30(%r8),%edx
140894bf9:	4d 8b 40 08          	mov    0x8(%r8),%r8
140894bfd:	ff ca                	dec    %edx
140894bff:	4c 8b 09             	mov    (%rcx),%r9
140894c02:	49 0f af 92 c8 00 00 	imul   0xc8(%r10),%rdx
140894c09:	00
140894c0a:	49 8b 81 90 00 00 00 	mov    0x90(%r9),%rax
140894c11:	ff 15 09 ee 6e 00    	call   *0x6eee09(%rip)        # 0x140f83a20
140894c17:	eb 08                	jmp    0x140894c21
140894c19:	49 8b c8             	mov    %r8,%rcx
140894c1c:	e8 af ce 05 00       	call   0x1408f1ad0
140894c21:	41 89 1f             	mov    %ebx,(%r15)
140894c24:	33 c0                	xor    %eax,%eax
140894c26:	48 83 c4 40          	add    $0x40,%rsp
140894c2a:	41 5f                	pop    %r15
140894c2c:	41 5e                	pop    %r14
140894c2e:	41 5c                	pop    %r12
140894c30:	5f                   	pop    %rdi
140894c31:	5e                   	pop    %rsi
140894c32:	5b                   	pop    %rbx
140894c33:	5d                   	pop    %rbp
140894c34:	c3                   	ret
140894c35:	cc                   	int3
140894c36:	cc                   	int3
140894c37:	cc                   	int3
140894c38:	cc                   	int3
140894c39:	cc                   	int3
140894c3a:	cc                   	int3
140894c3b:	cc                   	int3
140894c3c:	cc                   	int3
140894c3d:	cc                   	int3
140894c3e:	cc                   	int3
140894c3f:	cc                   	int3
140894c40:	48 83 ec 38          	sub    $0x38,%rsp
140894c44:	4c 8b 54 24 60       	mov    0x60(%rsp),%r10
140894c49:	48 8b c1             	mov    %rcx,%rax
140894c4c:	48 8b 49 08          	mov    0x8(%rcx),%rcx
140894c50:	45 8b d8             	mov    %r8d,%r11d
140894c53:	83 fa 01             	cmp    $0x1,%edx
140894c56:	77 41                	ja     0x140894c99
140894c58:	73 34                	jae    0x140894c8e
140894c5a:	48 8d 05 e3 ed 7b 00 	lea    0x7bede3(%rip),%rax        # 0x141053a44
140894c61:	41 b9 fd 16 01 00    	mov    $0x116fd,%r9d
140894c67:	4c 8d 05 02 ec 7b 00 	lea    0x7bec02(%rip),%r8        # 0x141053870
140894c6e:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140894c73:	48 8d 15 d6 eb 7b 00 	lea    0x7bebd6(%rip),%rdx        # 0x141053850
140894c7a:	b9 0b 00 00 00       	mov    $0xb,%ecx
140894c7f:	e8 bc 48 fe ff       	call   0x140879540
140894c84:	b8 0b 00 00 00       	mov    $0xb,%eax
140894c89:	48 83 c4 38          	add    $0x38,%rsp
140894c8d:	c3                   	ret
140894c8e:	45 33 c0             	xor    %r8d,%r8d
140894c91:	44 39 41 40          	cmp    %r8d,0x40(%rcx)
140894c95:	41 0f 44 d0          	cmove  %r8d,%edx
140894c99:	4d 89 8a 80 00 00 00 	mov    %r9,0x80(%r10)
140894ca0:	4d 8d 4a 01          	lea    0x1(%r10),%r9
140894ca4:	41 89 52 50          	mov    %edx,0x50(%r10)
140894ca8:	41 c6 42 54 ff       	movb   $0xff,0x54(%r10)
140894cad:	49 89 42 08          	mov    %rax,0x8(%r10)
140894cb1:	49 89 4a 20          	mov    %rcx,0x20(%r10)
140894cb5:	41 c6 42 01 00       	movb   $0x0,0x1(%r10)
140894cba:	48 8b 41 10          	mov    0x10(%rcx),%rax
140894cbe:	48 85 c0             	test   %rax,%rax
140894cc1:	74 1b                	je     0x140894cde
140894cc3:	39 50 50             	cmp    %edx,0x50(%rax)
140894cc6:	75 09                	jne    0x140894cd1
140894cc8:	80 48 01 20          	orb    $0x20,0x1(%rax)
140894ccc:	41 c6 42 01 20       	movb   $0x20,0x1(%r10)
140894cd1:	48 8b 40 28          	mov    0x28(%rax),%rax
140894cd5:	48 85 c0             	test   %rax,%rax
140894cd8:	75 e9                	jne    0x140894cc3
140894cda:	4d 8d 4a 01          	lea    0x1(%r10),%r9
140894cde:	41 c6 02 01          	movb   $0x1,(%r10)
140894ce2:	48 8b 41 10          	mov    0x10(%rcx),%rax
140894ce6:	49 89 42 28          	mov    %rax,0x28(%r10)
140894cea:	4c 89 51 10          	mov    %r10,0x10(%rcx)
140894cee:	45 85 db             	test   %r11d,%r11d
140894cf1:	74 22                	je     0x140894d15
140894cf3:	41 0f b6 42 01       	movzbl 0x1(%r10),%eax
140894cf8:	0c 01                	or     $0x1,%al
140894cfa:	41 c6 42 02 00       	movb   $0x0,0x2(%r10)
140894cff:	41 88 01             	mov    %al,(%r9)
140894d02:	48 83 b9 88 00 00 00 	cmpq   $0x0,0x88(%rcx)
140894d09:	00
140894d0a:	75 0e                	jne    0x140894d1a
140894d0c:	48 83 c4 38          	add    $0x38,%rsp
140894d10:	e9 db ae ff ff       	jmp    0x14088fbf0
140894d15:	41 c6 42 02 02       	movb   $0x2,0x2(%r10)
140894d1a:	33 c0                	xor    %eax,%eax
140894d1c:	48 83 c4 38          	add    $0x38,%rsp
140894d20:	c3                   	ret
140894d21:	cc                   	int3
140894d22:	cc                   	int3
140894d23:	cc                   	int3
140894d24:	cc                   	int3
140894d25:	cc                   	int3
140894d26:	cc                   	int3
140894d27:	cc                   	int3