14043667a:	74 3c                	je     0x1404366b8
14043667c:	48 8b 53 10          	mov    0x10(%rbx),%rdx
140436680:	48 2b d1             	sub    %rcx,%rdx
140436683:	48 83 e2 f8          	and    $0xfffffffffffffff8,%rdx
140436687:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
14043668e:	72 18                	jb     0x1404366a8
140436690:	48 83 c2 27          	add    $0x27,%rdx
140436694:	4c 8b 41 f8          	mov    -0x8(%rcx),%r8
140436698:	49 2b c8             	sub    %r8,%rcx
14043669b:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
14043669f:	48 83 f8 1f          	cmp    $0x1f,%rax
1404366a3:	77 7c                	ja     0x140436721
1404366a5:	49 8b c8             	mov    %r8,%rcx
1404366a8:	e8 97 4a 9e 00       	call   0x140e1b144
1404366ad:	48 89 2b             	mov    %rbp,(%rbx)
1404366b0:	48 89 6b 08          	mov    %rbp,0x8(%rbx)
1404366b4:	48 89 6b 10          	mov    %rbp,0x10(%rbx)
1404366b8:	ba 18 00 00 00       	mov    $0x18,%edx
1404366bd:	48 8b cb             	mov    %rbx,%rcx
1404366c0:	e8 7f 4a 9e 00       	call   0x140e1b144
1404366c5:	48 8b 9f 80 00 00 00 	mov    0x80(%rdi),%rbx
1404366cc:	48 85 db             	test   %rbx,%rbx
1404366cf:	74 34                	je     0x140436705
1404366d1:	80 3b ff             	cmpb   $0xff,(%rbx)
1404366d4:	74 22                	je     0x1404366f8
1404366d6:	48 8b 73 08          	mov    0x8(%rbx),%rsi
1404366da:	48 85 f6             	test   %rsi,%rsi
1404366dd:	74 15                	je     0x1404366f4
1404366df:	48 8b ce             	mov    %rsi,%rcx
1404366e2:	e8 69 21 00 00       	call   0x140438850
1404366e7:	ba 28 00 00 00       	mov    $0x28,%edx
1404366ec:	48 8b ce             	mov    %rsi,%rcx
1404366ef:	e8 50 4a 9e 00       	call   0x140e1b144
1404366f4:	48 89 6b 08          	mov    %rbp,0x8(%rbx)
1404366f8:	ba 20 00 00 00       	mov    $0x20,%edx
1404366fd:	48 8b cb             	mov    %rbx,%rcx
140436700:	e8 3f 4a 9e 00       	call   0x140e1b144
140436705:	48 89 af 80 00 00 00 	mov    %rbp,0x80(%rdi)
14043670c:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140436711:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
140436716:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
14043671b:	48 83 c4 20          	add    $0x20,%rsp
14043671f:	5f                   	pop    %rdi
140436720:	c3                   	ret
140436721:	e8 7e 3a 9f 00       	call   0x140e2a1a4
140436726:	cc                   	int3
140436727:	cc                   	int3
140436728:	cc                   	int3
140436729:	cc                   	int3
14043672a:	cc                   	int3
14043672b:	cc                   	int3
14043672c:	cc                   	int3
14043672d:	cc                   	int3
14043672e:	cc                   	int3
14043672f:	cc                   	int3
140436730:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
140436735:	57                   	push   %rdi
140436736:	48 83 ec 20          	sub    $0x20,%rsp
14043673a:	0f b6 51 04          	movzbl 0x4(%rcx),%edx
14043673e:	48 8b f1             	mov    %rcx,%rsi
140436741:	83 ea 01             	sub    $0x1,%edx
140436744:	0f 84 4e 01 00 00    	je     0x140436898
14043674a:	48 89 5c 24 30       	mov    %rbx,0x30(%rsp)
14043674f:	48 89 6c 24 38       	mov    %rbp,0x38(%rsp)
140436754:	83 ea 0c             	sub    $0xc,%edx
140436757:	0f 84 b5 00 00 00    	je     0x140436812
14043675d:	83 fa 04             	cmp    $0x4,%edx
140436760:	0f 85 97 00 00 00    	jne    0x1404367fd
140436766:	48 8b 59 18          	mov    0x18(%rcx),%rbx
14043676a:	33 ff                	xor    %edi,%edi
14043676c:	48 85 db             	test   %rbx,%rbx
14043676f:	0f 84 84 00 00 00    	je     0x1404367f9
140436775:	39 7b 28             	cmp    %edi,0x28(%rbx)
140436778:	75 15                	jne    0x14043678f
14043677a:	48 8b 4b 30          	mov    0x30(%rbx),%rcx
14043677e:	48 85 c9             	test   %rcx,%rcx
140436781:	74 05                	je     0x140436788
140436783:	e8 bc 49 9e 00       	call   0x140e1b144
140436788:	48 89 7b 30          	mov    %rdi,0x30(%rbx)
14043678c:	89 7b 38             	mov    %edi,0x38(%rbx)
14043678f:	39 7b 40             	cmp    %edi,0x40(%rbx)
140436792:	75 22                	jne    0x1404367b6
140436794:	48 8b 6b 48          	mov    0x48(%rbx),%rbp
140436798:	48 85 ed             	test   %rbp,%rbp
14043679b:	74 15                	je     0x1404367b2
14043679d:	48 8b cd             	mov    %rbp,%rcx
1404367a0:	e8 3b 32 00 00       	call   0x1404399e0
1404367a5:	ba 20 00 00 00       	mov    $0x20,%edx
1404367aa:	48 8b cd             	mov    %rbp,%rcx
1404367ad:	e8 92 49 9e 00       	call   0x140e1b144
1404367b2:	48 89 7b 48          	mov    %rdi,0x48(%rbx)
1404367b6:	83 7b 50 01          	cmpl   $0x1,0x50(%rbx)
1404367ba:	75 15                	jne    0x1404367d1
1404367bc:	48 8b 4b 58          	mov    0x58(%rbx),%rcx
1404367c0:	48 85 c9             	test   %rcx,%rcx
1404367c3:	74 05                	je     0x1404367ca
1404367c5:	e8 7a 49 9e 00       	call   0x140e1b144
1404367ca:	48 89 7b 58          	mov    %rdi,0x58(%rbx)
1404367ce:	89 7b 60             	mov    %edi,0x60(%rbx)
1404367d1:	83 7b 68 01          	cmpl   $0x1,0x68(%rbx)
1404367d5:	75 15                	jne    0x1404367ec
1404367d7:	48 8b 4b 70          	mov    0x70(%rbx),%rcx
1404367db:	48 85 c9             	test   %rcx,%rcx
1404367de:	74 05                	je     0x1404367e5
1404367e0:	e8 5f 49 9e 00       	call   0x140e1b144
1404367e5:	48 89 7b 70          	mov    %rdi,0x70(%rbx)
1404367e9:	89 7b 78             	mov    %edi,0x78(%rbx)
1404367ec:	ba a8 00 00 00       	mov    $0xa8,%edx
1404367f1:	48 8b cb             	mov    %rbx,%rcx
1404367f4:	e8 4b 49 9e 00       	call   0x140e1b144
1404367f9:	48 89 7e 18          	mov    %rdi,0x18(%rsi)
1404367fd:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140436802:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
140436807:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
14043680c:	48 83 c4 20          	add    $0x20,%rsp
140436810:	5f                   	pop    %rdi
140436811:	c3                   	ret
140436812:	48 8b 59 10          	mov    0x10(%rcx),%rbx
140436816:	33 ff                	xor    %edi,%edi
140436818:	48 85 db             	test   %rbx,%rbx
14043681b:	74 72                	je     0x14043688f
14043681d:	48 8b 4b 10          	mov    0x10(%rbx),%rcx
140436821:	48 85 c9             	test   %rcx,%rcx
140436824:	74 0a                	je     0x140436830
140436826:	ba 0c 00 00 00       	mov    $0xc,%edx
14043682b:	e8 14 49 9e 00       	call   0x140e1b144
140436830:	48 8b 4b 18          	mov    0x18(%rbx),%rcx
140436834:	48 89 7b 10          	mov    %rdi,0x10(%rbx)
140436838:	48 85 c9             	test   %rcx,%rcx
14043683b:	74 0a                	je     0x140436847
14043683d:	ba 0c 00 00 00       	mov    $0xc,%edx
140436842:	e8 fd 48 9e 00       	call   0x140e1b144
140436847:	48 89 7b 18          	mov    %rdi,0x18(%rbx)
14043684b:	48 8b 4b 28          	mov    0x28(%rbx),%rcx
14043684f:	48 85 c9             	test   %rcx,%rcx
140436852:	74 05                	je     0x140436859
140436854:	e8 eb 48 9e 00       	call   0x140e1b144
140436859:	48 89 7b 28          	mov    %rdi,0x28(%rbx)
14043685d:	89 7b 30             	mov    %edi,0x30(%rbx)
140436860:	48 8b 6b 38          	mov    0x38(%rbx),%rbp
140436864:	48 85 ed             	test   %rbp,%rbp
140436867:	74 15                	je     0x14043687e
140436869:	48 8b cd             	mov    %rbp,%rcx
14043686c:	e8 6f 31 00 00       	call   0x1404399e0
140436871:	ba 20 00 00 00       	mov    $0x20,%edx
140436876:	48 8b cd             	mov    %rbp,%rcx
140436879:	e8 c6 48 9e 00       	call   0x140e1b144
14043687e:	ba 50 00 00 00       	mov    $0x50,%edx
140436883:	48 89 7b 38          	mov    %rdi,0x38(%rbx)
140436887:	48 8b cb             	mov    %rbx,%rcx
14043688a:	e8 b5 48 9e 00       	call   0x140e1b144
14043688f:	48 89 7e 10          	mov    %rdi,0x10(%rsi)
140436893:	e9 65 ff ff ff       	jmp    0x1404367fd
140436898:	48 8b 49 08          	mov    0x8(%rcx),%rcx
14043689c:	48 85 c9             	test   %rcx,%rcx
14043689f:	74 0a                	je     0x1404368ab
1404368a1:	ba 02 00 00 00       	mov    $0x2,%edx
1404368a6:	e8 99 48 9e 00       	call   0x140e1b144
1404368ab:	33 ff                	xor    %edi,%edi
1404368ad:	48 89 7e 08          	mov    %rdi,0x8(%rsi)
1404368b1:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
1404368b6:	48 83 c4 20          	add    $0x20,%rsp
1404368ba:	5f                   	pop    %rdi
1404368bb:	c3                   	ret
1404368bc:	cc                   	int3
1404368bd:	cc                   	int3
1404368be:	cc                   	int3
1404368bf:	cc                   	int3
1404368c0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1404368c5:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
1404368ca:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
1404368cf:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
1404368d4:	41 56                	push   %r14
1404368d6:	48 83 ec 20          	sub    $0x20,%rsp
1404368da:	0f b6 51 01          	movzbl 0x1(%rcx),%edx
1404368de:	48 8b f1             	mov    %rcx,%rsi
1404368e1:	83 ea 0a             	sub    $0xa,%edx
1404368e4:	0f 84 13 01 00 00    	je     0x1404369fd
1404368ea:	83 ea 02             	sub    $0x2,%edx
1404368ed:	74 22                	je     0x140436911
1404368ef:	83 fa 01             	cmp    $0x1,%edx
1404368f2:	0f 85 19 02 00 00    	jne    0x140436b11
1404368f8:	48 8b 49 18          	mov    0x18(%rcx),%rcx
1404368fc:	48 85 c9             	test   %rcx,%rcx
1404368ff:	74 05                	je     0x140436906
140436901:	e8 ca 35 00 00       	call   0x140439ed0
140436906:	33 db                	xor    %ebx,%ebx
140436908:	48 89 5e 18          	mov    %rbx,0x18(%rsi)
14043690c:	e9 00 02 00 00       	jmp    0x140436b11
140436911:	48 8b 79 10          	mov    0x10(%rcx),%rdi
140436915:	33 db                	xor    %ebx,%ebx
140436917:	48 85 ff             	test   %rdi,%rdi
14043691a:	0f 84 d4 00 00 00    	je     0x1404369f4
140436920:	48 8b 0f             	mov    (%rdi),%rcx
140436923:	48 85 c9             	test   %rcx,%rcx
140436926:	74 0a                	je     0x140436932
140436928:	ba 08 00 00 00       	mov    $0x8,%edx
14043692d:	e8 12 48 9e 00       	call   0x140e1b144
140436932:	48 8b 4f 20          	mov    0x20(%rdi),%rcx
140436936:	48 89 1f             	mov    %rbx,(%rdi)
140436939:	48 85 c9             	test   %rcx,%rcx
14043693c:	74 0a                	je     0x140436948
14043693e:	ba 0c 00 00 00       	mov    $0xc,%edx
140436943:	e8 fc 47 9e 00       	call   0x140e1b144
140436948:	48 89 5f 20          	mov    %rbx,0x20(%rdi)
14043694c:	48 8b 4f 30          	mov    0x30(%rdi),%rcx
140436950:	48 85 c9             	test   %rcx,%rcx
140436953:	74 05                	je     0x14043695a
140436955:	e8 ea 47 9e 00       	call   0x140e1b144
14043695a:	48 89 5f 30          	mov    %rbx,0x30(%rdi)
14043695e:	89 5f 38             	mov    %ebx,0x38(%rdi)
140436961:	48 8b 6f 40          	mov    0x40(%rdi),%rbp
140436965:	48 85 ed             	test   %rbp,%rbp
140436968:	74 15                	je     0x14043697f
14043696a:	48 8b cd             	mov    %rbp,%rcx
14043696d:	e8 6e 30 00 00       	call   0x1404399e0
140436972:	ba 20 00 00 00       	mov    $0x20,%edx
140436977:	48 8b cd             	mov    %rbp,%rcx
14043697a:	e8 c5 47 9e 00       	call   0x140e1b144
14043697f:	48 8b 6f 48          	mov    0x48(%rdi),%rbp
140436983:	48 89 5f 40          	mov    %rbx,0x40(%rdi)
140436987:	48 85 ed             	test   %rbp,%rbp
14043698a:	74 15                	je     0x1404369a1
14043698c:	48 8b cd             	mov    %rbp,%rcx
14043698f:	e8 4c 30 00 00       	call   0x1404399e0
140436994:	ba 20 00 00 00       	mov    $0x20,%edx
140436999:	48 8b cd             	mov    %rbp,%rcx
14043699c:	e8 a3 47 9e 00       	call   0x140e1b144
1404369a1:	48 8b 6f 60          	mov    0x60(%rdi),%rbp
1404369a5:	48 89 5f 48          	mov    %rbx,0x48(%rdi)
1404369a9:	48 85 ed             	test   %rbp,%rbp
1404369ac:	74 35                	je     0x1404369e3
1404369ae:	80 7d 00 ff          	cmpb   $0xff,0x0(%rbp)
1404369b2:	74 22                	je     0x1404369d6
1404369b4:	4c 8b 75 08          	mov    0x8(%rbp),%r14
1404369b8:	4d 85 f6             	test   %r14,%r14
1404369bb:	74 15                	je     0x1404369d2
1404369bd:	49 8b ce             	mov    %r14,%rcx
1404369c0:	e8 8b 1e 00 00       	call   0x140438850
1404369c5:	ba 28 00 00 00       	mov    $0x28,%edx
1404369ca:	49 8b ce             	mov    %r14,%rcx
1404369cd:	e8 72 47 9e 00       	call   0x140e1b144
1404369d2:	48 89 5d 08          	mov    %rbx,0x8(%rbp)
1404369d6:	ba 20 00 00 00       	mov    $0x20,%edx
1404369db:	48 8b cd             	mov    %rbp,%rcx
1404369de:	e8 61 47 9e 00       	call   0x140e1b144
1404369e3:	ba 78 00 00 00       	mov    $0x78,%edx
1404369e8:	48 89 5f 60          	mov    %rbx,0x60(%rdi)
1404369ec:	48 8b cf             	mov    %rdi,%rcx
1404369ef:	e8 50 47 9e 00       	call   0x140e1b144
1404369f4:	48 89 5e 10          	mov    %rbx,0x10(%rsi)
1404369f8:	e9 14 01 00 00       	jmp    0x140436b11
1404369fd:	48 8b 79 08          	mov    0x8(%rcx),%rdi
140436a01:	33 db                	xor    %ebx,%ebx
140436a03:	48 85 ff             	test   %rdi,%rdi
140436a06:	0f 84 01 01 00 00    	je     0x140436b0d
140436a0c:	48 8b 0f             	mov    (%rdi),%rcx
140436a0f:	48 85 c9             	test   %rcx,%rcx
140436a12:	74 0a                	je     0x140436a1e
140436a14:	ba 08 00 00 00       	mov    $0x8,%edx
140436a19:	e8 26 47 9e 00       	call   0x140e1b144
140436a1e:	48 89 1f             	mov    %rbx,(%rdi)
140436a21:	48 8b 4f 20          	mov    0x20(%rdi),%rcx
140436a25:	48 85 c9             	test   %rcx,%rcx
140436a28:	74 05                	je     0x140436a2f
140436a2a:	e8 15 47 9e 00       	call   0x140e1b144
140436a2f:	48 89 5f 20          	mov    %rbx,0x20(%rdi)
140436a33:	89 5f 28             	mov    %ebx,0x28(%rdi)
140436a36:	48 8b 6f 30          	mov    0x30(%rdi),%rbp
140436a3a:	48 85 ed             	test   %rbp,%rbp
140436a3d:	74 15                	je     0x140436a54
140436a3f:	48 8b cd             	mov    %rbp,%rcx
140436a42:	e8 99 2f 00 00       	call   0x1404399e0
140436a47:	ba 20 00 00 00       	mov    $0x20,%edx
140436a4c:	48 8b cd             	mov    %rbp,%rcx
140436a4f:	e8 f0 46 9e 00       	call   0x140e1b144
140436a54:	48 8b 6f 38          	mov    0x38(%rdi),%rbp
140436a58:	48 89 5f 30          	mov    %rbx,0x30(%rdi)
140436a5c:	48 85 ed             	test   %rbp,%rbp
140436a5f:	74 15                	je     0x140436a76
140436a61:	48 8b cd             	mov    %rbp,%rcx
140436a64:	e8 77 2f 00 00       	call   0x1404399e0
140436a69:	ba 20 00 00 00       	mov    $0x20,%edx
140436a6e:	48 8b cd             	mov    %rbp,%rcx
140436a71:	e8 ce 46 9e 00       	call   0x140e1b144
140436a76:	48 8b 6f 40          	mov    0x40(%rdi),%rbp
140436a7a:	48 89 5f 38          	mov    %rbx,0x38(%rdi)
140436a7e:	48 85 ed             	test   %rbp,%rbp
140436a81:	74 15                	je     0x140436a98
140436a83:	48 8b cd             	mov    %rbp,%rcx
140436a86:	e8 55 2f 00 00       	call   0x1404399e0
140436a8b:	ba 20 00 00 00       	mov    $0x20,%edx
140436a90:	48 8b cd             	mov    %rbp,%rcx
140436a93:	e8 ac 46 9e 00       	call   0x140e1b144
140436a98:	48 8b 6f 48          	mov    0x48(%rdi),%rbp
140436a9c:	48 89 5f 40          	mov    %rbx,0x40(%rdi)
140436aa0:	48 85 ed             	test   %rbp,%rbp
140436aa3:	74 15                	je     0x140436aba
140436aa5:	48 8b cd             	mov    %rbp,%rcx
140436aa8:	e8 33 2f 00 00       	call   0x1404399e0
140436aad:	ba 20 00 00 00       	mov    $0x20,%edx
140436ab2:	48 8b cd             	mov    %rbp,%rcx
140436ab5:	e8 8a 46 9e 00       	call   0x140e1b144
140436aba:	48 8b 6f 60          	mov    0x60(%rdi),%rbp
140436abe:	48 89 5f 48          	mov    %rbx,0x48(%rdi)
140436ac2:	48 85 ed             	test   %rbp,%rbp
140436ac5:	74 35                	je     0x140436afc
140436ac7:	80 7d 00 ff          	cmpb   $0xff,0x0(%rbp)
140436acb:	74 22                	je     0x140436aef
140436acd:	4c 8b 75 08          	mov    0x8(%rbp),%r14
140436ad1:	4d 85 f6             	test   %r14,%r14
140436ad4:	74 15                	je     0x140436aeb
140436ad6:	49 8b ce             	mov    %r14,%rcx
140436ad9:	e8 72 1d 00 00       	call   0x140438850
140436ade:	ba 28 00 00 00       	mov    $0x28,%edx
140436ae3:	49 8b ce             	mov    %r14,%rcx
140436ae6:	e8 59 46 9e 00       	call   0x140e1b144
140436aeb:	48 89 5d 08          	mov    %rbx,0x8(%rbp)
140436aef:	ba 20 00 00 00       	mov    $0x20,%edx
140436af4:	48 8b cd             	mov    %rbp,%rcx
140436af7:	e8 48 46 9e 00       	call   0x140e1b144
140436afc:	ba 78 00 00 00       	mov    $0x78,%edx
140436b01:	48 89 5f 60          	mov    %rbx,0x60(%rdi)
140436b05:	48 8b cf             	mov    %rdi,%rcx
140436b08:	e8 37 46 9e 00       	call   0x140e1b144
140436b0d:	48 89 5e 08          	mov    %rbx,0x8(%rsi)
140436b11:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140436b16:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
140436b1b:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
140436b20:	48 8b 7c 24 48       	mov    0x48(%rsp),%rdi
140436b25:	48 83 c4 20          	add    $0x20,%rsp
140436b29:	41 5e                	pop    %r14
140436b2b:	c3                   	ret
140436b2c:	cc                   	int3
140436b2d:	cc                   	int3
140436b2e:	cc                   	int3
140436b2f:	cc                   	int3
140436b30:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
140436b35:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
140436b3a:	41 56                	push   %r14
140436b3c:	48 83 ec 20          	sub    $0x20,%rsp
140436b40:	48 8b f1             	mov    %rcx,%rsi
140436b43:	48 8b 09             	mov    (%rcx),%rcx
140436b46:	48 85 c9             	test   %rcx,%rcx
140436b49:	74 0a                	je     0x140436b55
140436b4b:	ba 08 00 00 00       	mov    $0x8,%edx
140436b50:	e8 ef 45 9e 00       	call   0x140e1b144
140436b55:	48 8b 5e 18          	mov    0x18(%rsi),%rbx
140436b59:	45 33 f6             	xor    %r14d,%r14d
140436b5c:	4c 89 36             	mov    %r14,(%rsi)