14005c803:	85 db                	test   %ebx,%ebx
14005c805:	7e 4f                	jle    0x14005c856
14005c807:	48 8b 07             	mov    (%rdi),%rax
14005c80a:	8b 50 f4             	mov    -0xc(%rax),%edx
14005c80d:	2b 70 f8             	sub    -0x8(%rax),%esi
14005c810:	2b d3                	sub    %ebx,%edx
14005c812:	0b f2                	or     %edx,%esi
14005c814:	7d 0a                	jge    0x14005c820
14005c816:	8b d3                	mov    %ebx,%edx
14005c818:	48 8b cf             	mov    %rdi,%rcx
14005c81b:	e8 b0 51 fc ff       	call   0x1400219d0
14005c820:	48 8b 07             	mov    (%rdi),%rax
14005c823:	33 d2                	xor    %edx,%edx
14005c825:	89 5c 24 28          	mov    %ebx,0x28(%rsp)
14005c829:	41 83 c9 ff          	or     $0xffffffff,%r9d
14005c82d:	4c 8b c5             	mov    %rbp,%r8
14005c830:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
14005c835:	8d 4a 03             	lea    0x3(%rdx),%ecx
14005c838:	ff 15 b2 28 01 00    	call   *0x128b2(%rip)        # 0x14006f0f0
14005c83e:	48 8b 07             	mov    (%rdi),%rax
14005c841:	3b 58 f4             	cmp    -0xc(%rax),%ebx
14005c844:	7f 36                	jg     0x14005c87c
14005c846:	89 58 f0             	mov    %ebx,-0x10(%rax)
14005c849:	48 8b 07             	mov    (%rdi),%rax
14005c84c:	48 63 cb             	movslq %ebx,%rcx
14005c84f:	66 44 89 34 48       	mov    %r14w,(%rax,%rcx,2)
14005c854:	eb 08                	jmp    0x14005c85e
14005c856:	48 8b cf             	mov    %rdi,%rcx
14005c859:	e8 de 4d fc ff       	call   0x14002163c
14005c85e:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
14005c863:	48 8b c7             	mov    %rdi,%rax
14005c866:	48 8b 7c 24 58       	mov    0x58(%rsp),%rdi
14005c86b:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
14005c870:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
14005c875:	48 83 c4 30          	add    $0x30,%rsp
14005c879:	41 5e                	pop    %r14
14005c87b:	c3                   	ret
14005c87c:	b9 57 00 07 80       	mov    $0x80070057,%ecx
14005c881:	e8 4a 1d fc ff       	call   0x14001e5d0
14005c886:	cc                   	int3
14005c887:	90                   	nop
14005c888:	4c 8b dc             	mov    %rsp,%r11
14005c88b:	48 83 ec 58          	sub    $0x58,%rsp
14005c88f:	4c 8b ca             	mov    %rdx,%r9
14005c892:	48 85 c9             	test   %rcx,%rcx
14005c895:	74 45                	je     0x14005c8dc
14005c897:	48 85 d2             	test   %rdx,%rdx
14005c89a:	74 39                	je     0x14005c8d5
14005c89c:	33 d2                	xor    %edx,%edx
14005c89e:	45 85 c0             	test   %r8d,%r8d
14005c8a1:	4c 8b c1             	mov    %rcx,%r8
14005c8a4:	0f 95 c2             	setne  %dl
14005c8a7:	49 83 63 e8 00       	andq   $0x0,-0x18(%r11)
14005c8ac:	49 83 63 e0 00       	andq   $0x0,-0x20(%r11)
14005c8b1:	83 c8 ff             	or     $0xffffffff,%eax
14005c8b4:	49 83 63 d8 00       	andq   $0x0,-0x28(%r11)
14005c8b9:	33 c9                	xor    %ecx,%ecx
14005c8bb:	89 44 24 28          	mov    %eax,0x28(%rsp)
14005c8bf:	4d 89 4b c8          	mov    %r9,-0x38(%r11)
14005c8c3:	44 8b c8             	mov    %eax,%r9d
14005c8c6:	ff 15 b4 28 01 00    	call   *0x128b4(%rip)        # 0x14006f180
14005c8cc:	85 c0                	test   %eax,%eax
14005c8ce:	74 18                	je     0x14005c8e8
14005c8d0:	83 e8 02             	sub    $0x2,%eax
14005c8d3:	eb 13                	jmp    0x14005c8e8
14005c8d5:	b8 01 00 00 00       	mov    $0x1,%eax
14005c8da:	eb 0c                	jmp    0x14005c8e8
14005c8dc:	4d 85 c9             	test   %r9,%r9
14005c8df:	75 04                	jne    0x14005c8e5
14005c8e1:	33 c0                	xor    %eax,%eax
14005c8e3:	eb 03                	jmp    0x14005c8e8
14005c8e5:	83 c8 ff             	or     $0xffffffff,%eax
14005c8e8:	48 83 c4 58          	add    $0x58,%rsp
14005c8ec:	c3                   	ret
14005c8ed:	90                   	nop
14005c8ee:	90                   	nop
14005c8ef:	90                   	nop
14005c8f0:	33 d2                	xor    %edx,%edx
14005c8f2:	48 85 c9             	test   %rcx,%rcx
14005c8f5:	75 03                	jne    0x14005c8fa
14005c8f7:	33 c0                	xor    %eax,%eax
14005c8f9:	c3                   	ret
14005c8fa:	48 83 c8 ff          	or     $0xffffffffffffffff,%rax
14005c8fe:	48 ff c0             	inc    %rax
14005c901:	66 39 14 41          	cmp    %dx,(%rcx,%rax,2)
14005c905:	75 f7                	jne    0x14005c8fe
14005c907:	c3                   	ret
14005c908:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
14005c90d:	53                   	push   %rbx
14005c90e:	48 83 ec 30          	sub    $0x30,%rsp
14005c912:	48 8b d9             	mov    %rcx,%rbx
14005c915:	33 c0                	xor    %eax,%eax
14005c917:	48 89 41 08          	mov    %rax,0x8(%rcx)
14005c91b:	89 41 14             	mov    %eax,0x14(%rcx)
14005c91e:	48 89 41 18          	mov    %rax,0x18(%rcx)
14005c922:	89 41 20             	mov    %eax,0x20(%rcx)
14005c925:	88 41 24             	mov    %al,0x24(%rcx)
14005c928:	66 89 41 26          	mov    %ax,0x26(%rcx)
14005c92c:	8b 44 24 60          	mov    0x60(%rsp),%eax
14005c930:	89 44 24 20          	mov    %eax,0x20(%rsp)
14005c934:	e8 db 00 00 00       	call   0x14005ca14
14005c939:	48 8b c3             	mov    %rbx,%rax
14005c93c:	48 83 c4 30          	add    $0x30,%rsp
14005c940:	5b                   	pop    %rbx
14005c941:	c3                   	ret
14005c942:	90                   	nop
14005c943:	90                   	nop
14005c944:	40 53                	rex push %rbx
14005c946:	48 83 ec 20          	sub    $0x20,%rsp
14005c94a:	48 8b d9             	mov    %rcx,%rbx
14005c94d:	48 8b 49 18          	mov    0x18(%rcx),%rcx
14005c951:	e8 8a 8f ff ff       	call   0x1400558e0
14005c956:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
14005c95a:	48 85 c9             	test   %rcx,%rcx
14005c95d:	74 0d                	je     0x14005c96c
14005c95f:	48 8b 01             	mov    (%rcx),%rax
14005c962:	48 8b 40 10          	mov    0x10(%rax),%rax
14005c966:	ff 15 1c 2d 01 00    	call   *0x12d1c(%rip)        # 0x14006f688
14005c96c:	48 83 63 08 00       	andq   $0x0,0x8(%rbx)
14005c971:	48 83 c4 20          	add    $0x20,%rsp
14005c975:	5b                   	pop    %rbx
14005c976:	c3                   	ret
14005c977:	90                   	nop
14005c978:	48 8b c4             	mov    %rsp,%rax
14005c97b:	48 89 58 10          	mov    %rbx,0x10(%rax)
14005c97f:	57                   	push   %rdi
14005c980:	48 83 ec 40          	sub    $0x40,%rsp
14005c984:	41 ba 03 00 00 00    	mov    $0x3,%r10d
14005c98a:	48 8d 59 10          	lea    0x10(%rcx),%rbx
14005c98e:	45 33 c9             	xor    %r9d,%r9d
14005c991:	44 89 50 08          	mov    %r10d,0x8(%rax)
14005c995:	41 8b f8             	mov    %r8d,%edi
14005c998:	44 89 48 20          	mov    %r9d,0x20(%rax)
14005c99c:	45 8d 5a 01          	lea    0x1(%r10),%r11d
14005c9a0:	44 89 58 e8          	mov    %r11d,-0x18(%rax)
14005c9a4:	44 39 49 14          	cmp    %r9d,0x14(%rcx)
14005c9a8:	74 34                	je     0x14005c9de
14005c9aa:	48 8b 09             	mov    (%rcx),%rcx
14005c9ad:	48 8d 40 e8          	lea    -0x18(%rax),%rax
14005c9b1:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
14005c9b6:	4c 8d 4c 24 50       	lea    0x50(%rsp),%r9
14005c9bb:	48 8d 44 24 68       	lea    0x68(%rsp),%rax
14005c9c0:	45 33 c0             	xor    %r8d,%r8d
14005c9c3:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
14005c9c8:	e8 37 73 00 00       	call   0x140063d04
14005c9cd:	44 8b 54 24 50       	mov    0x50(%rsp),%r10d
14005c9d2:	44 8b 4c 24 68       	mov    0x68(%rsp),%r9d
14005c9d7:	44 8b 5c 24 30       	mov    0x30(%rsp),%r11d
14005c9dc:	89 03                	mov    %eax,(%rbx)
14005c9de:	8b 03                	mov    (%rbx),%eax
14005c9e0:	83 f8 00             	cmp    $0x0,%eax
14005c9e3:	75 19                	jne    0x14005c9fe
14005c9e5:	41 83 fa 03          	cmp    $0x3,%r10d
14005c9e9:	75 06                	jne    0x14005c9f1
14005c9eb:	41 83 fb 04          	cmp    $0x4,%r11d
14005c9ef:	74 0d                	je     0x14005c9fe
14005c9f1:	41 83 fa 04          	cmp    $0x4,%r10d
14005c9f5:	74 07                	je     0x14005c9fe
14005c9f7:	b8 57 00 00 00       	mov    $0x57,%eax
14005c9fc:	89 03                	mov    %eax,(%rbx)
14005c9fe:	85 c0                	test   %eax,%eax
14005ca00:	74 03                	je     0x14005ca05
14005ca02:	44 8b cf             	mov    %edi,%r9d
14005ca05:	48 8b 5c 24 58       	mov    0x58(%rsp),%rbx
14005ca0a:	41 8b c1             	mov    %r9d,%eax
14005ca0d:	48 83 c4 40          	add    $0x40,%rsp
14005ca11:	5f                   	pop    %rdi
14005ca12:	c3                   	ret
14005ca13:	90                   	nop
14005ca14:	48 8b c4             	mov    %rsp,%rax
14005ca17:	48 89 58 10          	mov    %rbx,0x10(%rax)
14005ca1b:	48 89 68 18          	mov    %rbp,0x18(%rax)
14005ca1f:	48 89 70 20          	mov    %rsi,0x20(%rax)
14005ca23:	57                   	push   %rdi
14005ca24:	48 83 ec 30          	sub    $0x30,%rsp
14005ca28:	41 8b f9             	mov    %r9d,%edi
14005ca2b:	49 8b f0             	mov    %r8,%rsi
14005ca2e:	48 8b ea             	mov    %rdx,%rbp
14005ca31:	48 8b d9             	mov    %rcx,%rbx
14005ca34:	48 83 60 08 00       	andq   $0x0,0x8(%rax)
14005ca39:	e8 fa df ff ff       	call   0x14005aa38
14005ca3e:	48 8b c8             	mov    %rax,%rcx
14005ca41:	33 c0                	xor    %eax,%eax
14005ca43:	39 81 70 02 00 00    	cmp    %eax,0x270(%rcx)
14005ca49:	75 05                	jne    0x14005ca50
14005ca4b:	e8 f4 dc ff ff       	call   0x14005a744
14005ca50:	89 43 10             	mov    %eax,0x10(%rbx)
14005ca53:	85 ff                	test   %edi,%edi
14005ca55:	74 28                	je     0x14005ca7f
14005ca57:	85 c0                	test   %eax,%eax
14005ca59:	75 24                	jne    0x14005ca7f
14005ca5b:	e8 d8 df ff ff       	call   0x14005aa38
14005ca60:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
14005ca65:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
14005ca6a:	44 8b 4c 24 60       	mov    0x60(%rsp),%r9d
14005ca6f:	4c 8b c5             	mov    %rbp,%r8
14005ca72:	48 8b d6             	mov    %rsi,%rdx
14005ca75:	48 8b c8             	mov    %rax,%rcx
14005ca78:	e8 43 da ff ff       	call   0x14005a4c0
14005ca7d:	eb 22                	jmp    0x14005caa1
14005ca7f:	e8 b4 df ff ff       	call   0x14005aa38
14005ca84:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
14005ca89:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
14005ca8e:	44 8b 4c 24 60       	mov    0x60(%rsp),%r9d
14005ca93:	4c 8b c5             	mov    %rbp,%r8
14005ca96:	48 8b d6             	mov    %rsi,%rdx
14005ca99:	48 8b c8             	mov    %rax,%rcx
14005ca9c:	e8 6f e1 ff ff       	call   0x14005ac10
14005caa1:	89 43 10             	mov    %eax,0x10(%rbx)
14005caa4:	48 8b 4c 24 40       	mov    0x40(%rsp),%rcx
14005caa9:	48 85 c9             	test   %rcx,%rcx
14005caac:	74 4d                	je     0x14005cafb
14005caae:	48 8b 53 08          	mov    0x8(%rbx),%rdx
14005cab2:	48 3b d1             	cmp    %rcx,%rdx
14005cab5:	74 2c                	je     0x14005cae3
14005cab7:	48 8b 01             	mov    (%rcx),%rax
14005caba:	48 8b 40 08          	mov    0x8(%rax),%rax
14005cabe:	ff 15 c4 2b 01 00    	call   *0x12bc4(%rip)        # 0x14006f688
14005cac4:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
14005cac8:	48 85 c9             	test   %rcx,%rcx
14005cacb:	74 0d                	je     0x14005cada
14005cacd:	48 8b 01             	mov    (%rcx),%rax
14005cad0:	48 8b 40 10          	mov    0x10(%rax),%rax
14005cad4:	ff 15 ae 2b 01 00    	call   *0x12bae(%rip)        # 0x14006f688
14005cada:	48 8b 54 24 40       	mov    0x40(%rsp),%rdx
14005cadf:	48 89 53 08          	mov    %rdx,0x8(%rbx)
14005cae3:	48 8b 02             	mov    (%rdx),%rax
14005cae6:	48 8b ca             	mov    %rdx,%rcx
14005cae9:	48 8b 40 28          	mov    0x28(%rax),%rax
14005caed:	ff 15 95 2b 01 00    	call   *0x12b95(%rip)        # 0x14006f688
14005caf3:	48 89 03             	mov    %rax,(%rbx)
14005caf6:	48 8b 4c 24 40       	mov    0x40(%rsp),%rcx
14005cafb:	33 c0                	xor    %eax,%eax
14005cafd:	39 43 10             	cmp    %eax,0x10(%rbx)
14005cb00:	0f 94 c0             	sete   %al
14005cb03:	89 43 14             	mov    %eax,0x14(%rbx)
14005cb06:	48 85 c9             	test   %rcx,%rcx
14005cb09:	74 0d                	je     0x14005cb18
14005cb0b:	48 8b 01             	mov    (%rcx),%rax
14005cb0e:	48 8b 40 10          	mov    0x10(%rax),%rax
14005cb12:	ff 15 70 2b 01 00    	call   *0x12b70(%rip)        # 0x14006f688
14005cb18:	48 8b 5c 24 48       	mov    0x48(%rsp),%rbx
14005cb1d:	48 8b 6c 24 50       	mov    0x50(%rsp),%rbp
14005cb22:	48 8b 74 24 58       	mov    0x58(%rsp),%rsi
14005cb27:	48 83 c4 30          	add    $0x30,%rsp
14005cb2b:	5f                   	pop    %rdi
14005cb2c:	c3                   	ret
14005cb2d:	90                   	nop
14005cb2e:	90                   	nop
14005cb2f:	90                   	nop
14005cb30:	44 89 44 24 18       	mov    %r8d,0x18(%rsp)
14005cb35:	53                   	push   %rbx
14005cb36:	48 83 ec 30          	sub    $0x30,%rsp
14005cb3a:	83 79 14 00          	cmpl   $0x0,0x14(%rcx)
14005cb3e:	48 8d 59 10          	lea    0x10(%rcx),%rbx
14005cb42:	74 1f                	je     0x14005cb63
14005cb44:	48 8b 09             	mov    (%rcx),%rcx
14005cb47:	48 8d 44 24 50       	lea    0x50(%rsp),%rax
14005cb4c:	c7 44 24 28 04 00 00 	movl   $0x4,0x28(%rsp)
14005cb53:	00
14005cb54:	45 33 c0             	xor    %r8d,%r8d
14005cb57:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
14005cb5c:	e8 ab 71 00 00       	call   0x140063d0c
14005cb61:	89 03                	mov    %eax,(%rbx)
14005cb63:	8b 03                	mov    (%rbx),%eax
14005cb65:	48 83 c4 30          	add    $0x30,%rsp
14005cb69:	5b                   	pop    %rbx
14005cb6a:	c3                   	ret
14005cb6b:	90                   	nop
14005cb6c:	83 f9 ff             	cmp    $0xffffffff,%ecx
14005cb6f:	74 2e                	je     0x14005cb9f
14005cb71:	4c 89 44 24 18       	mov    %r8,0x18(%rsp)
14005cb76:	4c 89 4c 24 20       	mov    %r9,0x20(%rsp)
14005cb7b:	48 83 ec 28          	sub    $0x28,%rsp
14005cb7f:	8b c2                	mov    %edx,%eax
14005cb81:	4c 8d 4c 24 48       	lea    0x48(%rsp),%r9
14005cb86:	ba 0a 00 00 00       	mov    $0xa,%edx
14005cb8b:	3b c2                	cmp    %edx,%eax
14005cb8d:	0f 46 d0             	cmovbe %eax,%edx
14005cb90:	c1 e2 10             	shl    $0x10,%edx
14005cb93:	83 ca 02             	or     $0x2,%edx
14005cb96:	e8 a5 1b 00 00       	call   0x14005e740
14005cb9b:	48 83 c4 28          	add    $0x28,%rsp
14005cb9f:	c3                   	ret
14005cba0:	4c 8b dc             	mov    %rsp,%r11
14005cba3:	49 89 53 10          	mov    %rdx,0x10(%r11)
14005cba7:	4d 89 43 18          	mov    %r8,0x18(%r11)
14005cbab:	4d 89 4b 20          	mov    %r9,0x20(%r11)
14005cbaf:	48 83 ec 28          	sub    $0x28,%rsp
14005cbb3:	8b c1                	mov    %ecx,%eax
14005cbb5:	4d 8d 4b 18          	lea    0x18(%r11),%r9
14005cbb9:	8b 0d d9 59 06 00    	mov    0x659d9(%rip),%ecx        # 0x1400c2598
14005cbbf:	4c 8b c2             	mov    %rdx,%r8
14005cbc2:	83 f9 ff             	cmp    $0xffffffff,%ecx
14005cbc5:	74 15                	je     0x14005cbdc
14005cbc7:	ba 0a 00 00 00       	mov    $0xa,%edx
14005cbcc:	3b c2                	cmp    %edx,%eax
14005cbce:	0f 46 d0             	cmovbe %eax,%edx
14005cbd1:	c1 e2 10             	shl    $0x10,%edx
14005cbd4:	83 ca 02             	or     $0x2,%edx
14005cbd7:	e8 64 1b 00 00       	call   0x14005e740
14005cbdc:	48 83 c4 28          	add    $0x28,%rsp
14005cbe0:	c3                   	ret
14005cbe1:	90                   	nop
14005cbe2:	90                   	nop
14005cbe3:	90                   	nop
14005cbe4:	48 8d 05 55 f8 01 00 	lea    0x1f855(%rip),%rax        # 0x14007c440
14005cbeb:	c7 41 08 01 00 00 00 	movl   $0x1,0x8(%rcx)
14005cbf2:	48 89 01             	mov    %rax,(%rcx)
14005cbf5:	48 8b c1             	mov    %rcx,%rax
14005cbf8:	48 89 51 10          	mov    %rdx,0x10(%rcx)
14005cbfc:	44 89 41 18          	mov    %r8d,0x18(%rcx)
14005cc00:	c3                   	ret
14005cc01:	90                   	nop
14005cc02:	90                   	nop
14005cc03:	90                   	nop
14005cc04:	40 53                	rex push %rbx
14005cc06:	48 83 ec 20          	sub    $0x20,%rsp
14005cc0a:	48 8b d9             	mov    %rcx,%rbx
14005cc0d:	48 8d 05 2c f8 01 00 	lea    0x1f82c(%rip),%rax        # 0x14007c440
14005cc14:	48 89 01             	mov    %rax,(%rcx)
14005cc17:	48 8b 49 10          	mov    0x10(%rcx),%rcx
14005cc1b:	b8 00 00 00 80       	mov    $0x80000000,%eax
14005cc20:	48 03 c1             	add    %rcx,%rax
14005cc23:	48 83 f8 03          	cmp    $0x3,%rax
14005cc27:	76 05                	jbe    0x14005cc2e
14005cc29:	e8 be 70 00 00       	call   0x140063cec
14005cc2e:	48 8d 05 cb c4 01 00 	lea    0x1c4cb(%rip),%rax        # 0x140079100
14005cc35:	48 89 03             	mov    %rax,(%rbx)
14005cc38:	48 83 c4 20          	add    $0x20,%rsp
14005cc3c:	5b                   	pop    %rbx
14005cc3d:	c3                   	ret
14005cc3e:	90                   	nop
14005cc3f:	90                   	nop
14005cc40:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14005cc45:	57                   	push   %rdi
14005cc46:	48 83 ec 20          	sub    $0x20,%rsp
14005cc4a:	8b da                	mov    %edx,%ebx
14005cc4c:	48 8b f9             	mov    %rcx,%rdi
14005cc4f:	e8 b0 ff ff ff       	call   0x14005cc04
14005cc54:	f6 c3 01             	test   $0x1,%bl
14005cc57:	74 08                	je     0x14005cc61
14005cc59:	48 8b cf             	mov    %rdi,%rcx
14005cc5c:	e8 7f 8c ff ff       	call   0x1400558e0
14005cc61:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14005cc66:	48 8b c7             	mov    %rdi,%rax
14005cc69:	48 83 c4 20          	add    $0x20,%rsp
14005cc6d:	5f                   	pop    %rdi
14005cc6e:	c3                   	ret
14005cc6f:	90                   	nop