180053965:	48 8d 4b 60          	lea    0x60(%rbx),%rcx
180053969:	44 89 44 24 20       	mov    %r8d,0x20(%rsp)
18005396e:	44 8b c8             	mov    %eax,%r9d
180053971:	45 33 c0             	xor    %r8d,%r8d
180053974:	e8 b3 35 ff ff       	call   0x180046f2c
180053979:	49 83 7e 40 00       	cmpq   $0x0,0x40(%r14)
18005397e:	74 13                	je     0x180053993
180053980:	49 8b 4e 08          	mov    0x8(%r14),%rcx
180053984:	48 8b d7             	mov    %rdi,%rdx
180053987:	48 8b 89 50 01 00 00 	mov    0x150(%rcx),%rcx
18005398e:	e8 d5 ba fe ff       	call   0x18003f468
180053993:	85 f6                	test   %esi,%esi
180053995:	78 19                	js     0x1800539b0
180053997:	8b 4f 3c             	mov    0x3c(%rdi),%ecx
18005399a:	f6 c1 01             	test   $0x1,%cl
18005399d:	74 11                	je     0x1800539b0
18005399f:	48 8b 57 10          	mov    0x10(%rdi),%rdx
1800539a3:	8b 8f 80 00 00 00    	mov    0x80(%rdi),%ecx
1800539a9:	48 01 8a a8 00 00 00 	add    %rcx,0xa8(%rdx)
1800539b0:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
1800539b5:	8b c6                	mov    %esi,%eax
1800539b7:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
1800539bc:	48 8b 7c 24 50       	mov    0x50(%rsp),%rdi
1800539c1:	48 83 c4 30          	add    $0x30,%rsp
1800539c5:	41 5e                	pop    %r14
1800539c7:	c3                   	ret
1800539c8:	cc                   	int3
1800539c9:	cc                   	int3
1800539ca:	cc                   	int3
1800539cb:	cc                   	int3
1800539cc:	48 83 ec 28          	sub    $0x28,%rsp
1800539d0:	41 b0 08             	mov    $0x8,%r8b
1800539d3:	e8 38 3b ff ff       	call   0x180047510
1800539d8:	48 83 c4 28          	add    $0x28,%rsp
1800539dc:	c3                   	ret
1800539dd:	cc                   	int3
1800539de:	cc                   	int3
1800539df:	cc                   	int3
1800539e0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1800539e5:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
1800539ea:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
1800539ef:	57                   	push   %rdi
1800539f0:	41 56                	push   %r14
1800539f2:	41 57                	push   %r15
1800539f4:	48 83 ec 20          	sub    $0x20,%rsp
1800539f8:	33 db                	xor    %ebx,%ebx
1800539fa:	4d 8b f0             	mov    %r8,%r14
1800539fd:	48 8b fa             	mov    %rdx,%rdi
180053a00:	4c 8b f9             	mov    %rcx,%r15
180053a03:	48 39 9a a8 00 00 00 	cmp    %rbx,0xa8(%rdx)
180053a0a:	0f 85 ef 00 00 00    	jne    0x180053aff
180053a10:	8b 8a 88 00 00 00    	mov    0x88(%rdx),%ecx
180053a16:	8d 73 01             	lea    0x1(%rbx),%esi
180053a19:	83 f9 ff             	cmp    $0xffffffff,%ecx
180053a1c:	74 04                	je     0x180053a22
180053a1e:	d3 e6                	shl    %cl,%esi
180053a20:	eb 08                	jmp    0x180053a2a
180053a22:	41 8a 4f 2b          	mov    0x2b(%r15),%cl
180053a26:	d3 e6                	shl    %cl,%esi
180053a28:	ff ce                	dec    %esi
180053a2a:	49 8b 07             	mov    (%r15),%rax
180053a2d:	44 8b c6             	mov    %esi,%r8d
180053a30:	4c 8b 4a 78          	mov    0x78(%rdx),%r9
180053a34:	49 8b cf             	mov    %r15,%rcx
180053a37:	8b 92 84 00 00 00    	mov    0x84(%rdx),%edx
180053a3d:	48 8b 80 90 00 00 00 	mov    0x90(%rax),%rax
180053a44:	ff d0                	call   *%rax
180053a46:	0f 1f 00             	nopl   (%rax)
180053a49:	8b e8                	mov    %eax,%ebp
180053a4b:	83 f8 ff             	cmp    $0xffffffff,%eax
180053a4e:	75 0a                	jne    0x180053a5a
180053a50:	bb 0e 00 00 c0       	mov    $0xc000000e,%ebx
180053a55:	e9 a5 00 00 00       	jmp    0x180053aff
180053a5a:	4d 85 f6             	test   %r14,%r14
180053a5d:	75 2b                	jne    0x180053a8a
180053a5f:	b9 e0 00 00 00       	mov    $0xe0,%ecx
180053a64:	e8 ab 2e ff ff       	call   0x180046914
180053a69:	48 85 c0             	test   %rax,%rax
180053a6c:	74 0d                	je     0x180053a7b
180053a6e:	48 8b c8             	mov    %rax,%rcx
180053a71:	e8 f2 34 ff ff       	call   0x180046f68
180053a76:	48 8b d0             	mov    %rax,%rdx
180053a79:	eb 03                	jmp    0x180053a7e
180053a7b:	48 8b d3             	mov    %rbx,%rdx
180053a7e:	48 85 d2             	test   %rdx,%rdx
180053a81:	75 0a                	jne    0x180053a8d
180053a83:	bb 9a 00 00 c0       	mov    $0xc000009a,%ebx
180053a88:	eb 75                	jmp    0x180053aff
180053a8a:	49 8b 16             	mov    (%r14),%rdx
180053a8d:	8b 47 3c             	mov    0x3c(%rdi),%eax
180053a90:	83 e0 02             	and    $0x2,%eax
180053a93:	c7 42 60 01 00 00 00 	movl   $0x1,0x60(%rdx)
180053a9a:	09 42 3c             	or     %eax,0x3c(%rdx)
180053a9d:	48 8b 47 68          	mov    0x68(%rdi),%rax
180053aa1:	48 89 42 68          	mov    %rax,0x68(%rdx)
180053aa5:	8b 87 94 00 00 00    	mov    0x94(%rdi),%eax
180053aab:	83 f8 ff             	cmp    $0xffffffff,%eax
180053aae:	74 06                	je     0x180053ab6
180053ab0:	89 82 94 00 00 00    	mov    %eax,0x94(%rdx)
180053ab6:	48 8b 47 78          	mov    0x78(%rdi),%rax
180053aba:	48 89 42 78          	mov    %rax,0x78(%rdx)
180053abe:	8b 8f 80 00 00 00    	mov    0x80(%rdi),%ecx
180053ac4:	89 8a 80 00 00 00    	mov    %ecx,0x80(%rdx)
180053aca:	8b 8f 84 00 00 00    	mov    0x84(%rdi),%ecx
180053ad0:	89 8a 84 00 00 00    	mov    %ecx,0x84(%rdx)
180053ad6:	48 8b cf             	mov    %rdi,%rcx
180053ad9:	89 aa 88 00 00 00    	mov    %ebp,0x88(%rdx)
180053adf:	89 b2 8c 00 00 00    	mov    %esi,0x8c(%rdx)
180053ae5:	c6 82 98 00 00 00 03 	movb   $0x3,0x98(%rdx)
180053aec:	c6 82 9a 00 00 00 01 	movb   $0x1,0x9a(%rdx)
180053af3:	4c 89 ba d8 00 00 00 	mov    %r15,0xd8(%rdx)
180053afa:	e8 ad 35 ff ff       	call   0x1800470ac
180053aff:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
180053b04:	8b c3                	mov    %ebx,%eax
180053b06:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
180053b0b:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
180053b10:	48 83 c4 20          	add    $0x20,%rsp
180053b14:	41 5f                	pop    %r15
180053b16:	41 5e                	pop    %r14
180053b18:	5f                   	pop    %rdi
180053b19:	c3                   	ret
180053b1a:	cc                   	int3
180053b1b:	cc                   	int3
180053b1c:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
180053b21:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
180053b26:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
180053b2b:	57                   	push   %rdi
180053b2c:	48 83 ec 30          	sub    $0x30,%rsp
180053b30:	8b ba a0 00 00 00    	mov    0xa0(%rdx),%edi
180053b36:	48 8b da             	mov    %rdx,%rbx
180053b39:	8b aa 88 00 00 00    	mov    0x88(%rdx),%ebp
180053b3f:	48 8b f1             	mov    %rcx,%rsi
180053b42:	81 ff 16 00 00 80    	cmp    $0x80000016,%edi
180053b48:	0f 84 5a 01 00 00    	je     0x180053ca8
180053b4e:	0f b6 92 9a 00 00 00 	movzbl 0x9a(%rdx),%edx
180053b55:	83 ea 01             	sub    $0x1,%edx
180053b58:	0f 84 a0 00 00 00    	je     0x180053bfe
180053b5e:	83 ea 02             	sub    $0x2,%edx
180053b61:	0f 84 8d 00 00 00    	je     0x180053bf4
180053b67:	83 ea 01             	sub    $0x1,%edx
180053b6a:	74 7f                	je     0x180053beb
180053b6c:	83 ea 01             	sub    $0x1,%edx
180053b6f:	74 4b                	je     0x180053bbc
180053b71:	83 fa 01             	cmp    $0x1,%edx
180053b74:	0f 85 93 00 00 00    	jne    0x180053c0d
180053b7a:	85 ff                	test   %edi,%edi
180053b7c:	b8 0a 00 00 40       	mov    $0x4000000a,%eax
180053b81:	0f 48 f8             	cmovs  %eax,%edi
180053b84:	f7 43 3c 00 00 00 40 	testl  $0x40000000,0x3c(%rbx)
180053b8b:	0f 84 17 01 00 00    	je     0x180053ca8
180053b91:	48 8b 4b 10          	mov    0x10(%rbx),%rcx
180053b95:	48 8d 53 60          	lea    0x60(%rbx),%rdx
180053b99:	44 8b 4b 78          	mov    0x78(%rbx),%r9d
180053b9d:	45 33 c0             	xor    %r8d,%r8d
180053ba0:	8b 83 80 00 00 00    	mov    0x80(%rbx),%eax
180053ba6:	89 44 24 20          	mov    %eax,0x20(%rsp)
180053baa:	44 2b 49 78          	sub    0x78(%rcx),%r9d
180053bae:	48 83 c1 60          	add    $0x60,%rcx
180053bb2:	e8 75 33 ff ff       	call   0x180046f2c
180053bb7:	e9 ec 00 00 00       	jmp    0x180053ca8
180053bbc:	85 ff                	test   %edi,%edi
180053bbe:	78 4d                	js     0x180053c0d
180053bc0:	8b 83 9c 00 00 00    	mov    0x9c(%rbx),%eax
180053bc6:	83 8b 88 00 00 00 ff 	orl    $0xffffffff,0x88(%rbx)
180053bcd:	89 83 8c 00 00 00    	mov    %eax,0x8c(%rbx)
180053bd3:	c6 83 98 00 00 00 04 	movb   $0x4,0x98(%rbx)
180053bda:	c6 83 9a 00 00 00 06 	movb   $0x6,0x9a(%rbx)
180053be1:	bf 2d 02 00 c0       	mov    $0xc000022d,%edi
180053be6:	e9 f9 00 00 00       	jmp    0x180053ce4
180053beb:	c6 83 9a 00 00 00 05 	movb   $0x5,0x9a(%rbx)
180053bf2:	eb ed                	jmp    0x180053be1
180053bf4:	85 ff                	test   %edi,%edi
180053bf6:	0f 89 ac 00 00 00    	jns    0x180053ca8
180053bfc:	eb 0f                	jmp    0x180053c0d
180053bfe:	85 ff                	test   %edi,%edi
180053c00:	0f 89 a2 00 00 00    	jns    0x180053ca8
180053c06:	c6 83 9a 00 00 00 03 	movb   $0x3,0x9a(%rbx)
180053c0d:	8b 83 a0 00 00 00    	mov    0xa0(%rbx),%eax
180053c13:	3d 9c 00 00 c0       	cmp    $0xc000009c,%eax
180053c18:	74 22                	je     0x180053c3c
180053c1a:	3d 83 04 00 c0       	cmp    $0xc0000483,%eax
180053c1f:	74 1b                	je     0x180053c3c
180053c21:	8b 93 84 00 00 00    	mov    0x84(%rbx),%edx
180053c27:	44 8b c5             	mov    %ebp,%r8d
180053c2a:	e8 21 d7 ff ff       	call   0x180051350
180053c2f:	48 8b c8             	mov    %rax,%rcx
180053c32:	0f b7 00             	movzwl (%rax),%eax
180053c35:	66 83 c8 01          	or     $0x1,%ax
180053c39:	66 89 01             	mov    %ax,(%rcx)
180053c3c:	0f b3 ab 8c 00 00 00 	btr    %ebp,0x8c(%rbx)
180053c43:	48 8b 06             	mov    (%rsi),%rax
180053c46:	48 8b ce             	mov    %rsi,%rcx
180053c49:	4c 8b 4b 78          	mov    0x78(%rbx),%r9
180053c4d:	44 8b 83 8c 00 00 00 	mov    0x8c(%rbx),%r8d
180053c54:	8b 93 84 00 00 00    	mov    0x84(%rbx),%edx
180053c5a:	48 8b 80 90 00 00 00 	mov    0x90(%rax),%rax
180053c61:	ff d0                	call   *%rax
180053c63:	0f 1f 00             	nopl   (%rax)
180053c66:	89 83 88 00 00 00    	mov    %eax,0x88(%rbx)
180053c6c:	83 f8 ff             	cmp    $0xffffffff,%eax
180053c6f:	74 37                	je     0x180053ca8
180053c71:	8b 83 a0 00 00 00    	mov    0xa0(%rbx),%eax
180053c77:	bf 2d 02 00 c0       	mov    $0xc000022d,%edi
180053c7c:	3d 9c 00 00 c0       	cmp    $0xc000009c,%eax
180053c81:	74 07                	je     0x180053c8a
180053c83:	3d 83 04 00 c0       	cmp    $0xc0000483,%eax
180053c88:	75 5a                	jne    0x180053ce4
180053c8a:	8b 43 3c             	mov    0x3c(%rbx),%eax
180053c8d:	a8 01                	test   $0x1,%al
180053c8f:	75 53                	jne    0x180053ce4
180053c91:	0f ab ab 9c 00 00 00 	bts    %ebp,0x9c(%rbx)
180053c98:	80 bb 9a 00 00 00 03 	cmpb   $0x3,0x9a(%rbx)
180053c9f:	75 43                	jne    0x180053ce4
180053ca1:	c6 83 9a 00 00 00 04 	movb   $0x4,0x9a(%rbx)
180053ca8:	81 ff 2d 02 00 c0    	cmp    $0xc000022d,%edi
180053cae:	74 17                	je     0x180053cc7
180053cb0:	8a 83 9a 00 00 00    	mov    0x9a(%rbx),%al
180053cb6:	2c 05                	sub    $0x5,%al
180053cb8:	3c 01                	cmp    $0x1,%al
180053cba:	77 0b                	ja     0x180053cc7
180053cbc:	48 8b d3             	mov    %rbx,%rdx
180053cbf:	48 8b ce             	mov    %rsi,%rcx
180053cc2:	e8 f1 e6 ff ff       	call   0x1800523b8
180053cc7:	85 ff                	test   %edi,%edi
180053cc9:	78 19                	js     0x180053ce4
180053ccb:	8b 4b 3c             	mov    0x3c(%rbx),%ecx
180053cce:	f6 c1 01             	test   $0x1,%cl
180053cd1:	74 11                	je     0x180053ce4
180053cd3:	48 8b 53 10          	mov    0x10(%rbx),%rdx
180053cd7:	8b 8b 80 00 00 00    	mov    0x80(%rbx),%ecx
180053cdd:	48 01 8a a8 00 00 00 	add    %rcx,0xa8(%rdx)
180053ce4:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
180053ce9:	8b c7                	mov    %edi,%eax
180053ceb:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
180053cf0:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
180053cf5:	48 83 c4 30          	add    $0x30,%rsp
180053cf9:	5f                   	pop    %rdi
180053cfa:	c3                   	ret
180053cfb:	cc                   	int3
180053cfc:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
180053d01:	55                   	push   %rbp
180053d02:	56                   	push   %rsi
180053d03:	57                   	push   %rdi
180053d04:	41 54                	push   %r12
180053d06:	41 55                	push   %r13
180053d08:	41 56                	push   %r14
180053d0a:	41 57                	push   %r15
180053d0c:	48 83 ec 30          	sub    $0x30,%rsp
180053d10:	48 8b 42 08          	mov    0x8(%rdx),%rax
180053d14:	45 33 d2             	xor    %r10d,%r10d
180053d17:	4c 21 54 24 70       	and    %r10,0x70(%rsp)
180053d1c:	4d 8b f8             	mov    %r8,%r15
180053d1f:	49 83 c8 ff          	or     $0xffffffffffffffff,%r8
180053d23:	4c 8b f2             	mov    %rdx,%r14
180053d26:	48 8b f9             	mov    %rcx,%rdi
180053d29:	4c 89 44 24 78       	mov    %r8,0x78(%rsp)
180053d2e:	44 8b 48 3c          	mov    0x3c(%rax),%r9d
180053d32:	45 8b d9             	mov    %r9d,%r11d
180053d35:	44 21 54 24 74       	and    %r10d,0x74(%rsp)
180053d3a:	41 c1 e9 16          	shr    $0x16,%r9d
180053d3e:	41 8d 70 02          	lea    0x2(%r8),%esi
180053d42:	44 22 ce             	and    %sil,%r9b
180053d45:	41 c1 eb 17          	shr    $0x17,%r11d
180053d49:	41 80 e3 01          	and    $0x1,%r11b
180053d4d:	44 88 4c 24 71       	mov    %r9b,0x71(%rsp)
180053d52:	45 8d 48 03          	lea    0x3(%r8),%r9d
180053d56:	4c 39 51 40          	cmp    %r10,0x40(%rcx)
180053d5a:	74 3b                	je     0x180053d97
180053d5c:	0f b7 51 28          	movzwl 0x28(%rcx),%edx
180053d60:	f6 c2 08             	test   $0x8,%dl
180053d63:	75 32                	jne    0x180053d97
180053d65:	48 8b 41 08          	mov    0x8(%rcx),%rax
180053d69:	48 8b 88 50 01 00 00 	mov    0x150(%rax),%rcx
180053d70:	44 39 91 24 01 00 00 	cmp    %r10d,0x124(%rcx)
180053d77:	7e 05                	jle    0x180053d7e
180053d79:	41 8b f1             	mov    %r9d,%esi
180053d7c:	eb 19                	jmp    0x180053d97
180053d7e:	41 81 be 80 00 00 00 	cmpl   $0x40000,0x80(%r14)
180053d85:	00 00 04 00
180053d89:	72 ee                	jb     0x180053d79
180053d8b:	40 84 d6             	test   %dl,%sil
180053d8e:	74 07                	je     0x180053d97
180053d90:	45 84 db             	test   %r11b,%r11b
180053d93:	41 0f 45 f1          	cmovne %r9d,%esi
180053d97:	48 8b 4f 20          	mov    0x20(%rdi),%rcx
180053d9b:	48 8b 47 08          	mov    0x8(%rdi),%rax
180053d9f:	48 85 c9             	test   %rcx,%rcx
180053da2:	74 06                	je     0x180053daa
180053da4:	48 83 c1 38          	add    $0x38,%rcx
180053da8:	eb 04                	jmp    0x180053dae
180053daa:	48 8d 48 30          	lea    0x30(%rax),%rcx
180053dae:	48 8b 40 70          	mov    0x70(%rax),%rax
180053db2:	33 d2                	xor    %edx,%edx
180053db4:	48 f7 71 08          	divq   0x8(%rcx)
180053db8:	8a 4f 2a             	mov    0x2a(%rdi),%cl
180053dbb:	45 8b ae 80 00 00 00 	mov    0x80(%r14),%r13d
180053dc2:	4c 8b e0             	mov    %rax,%r12
180053dc5:	49 8b ae a8 00 00 00 	mov    0xa8(%r14),%rbp
180053dcc:	49 d3 e4             	shl    %cl,%r12
180053dcf:	49 8b 4e 78          	mov    0x78(%r14),%rcx
180053dd3:	4c 03 e9             	add    %rcx,%r13
180053dd6:	48 03 e9             	add    %rcx,%rbp
180053dd9:	49 3b ed             	cmp    %r13,%rbp
180053ddc:	0f 83 67 01 00 00    	jae    0x180053f49
180053de2:	8a 4f 2a             	mov    0x2a(%rdi),%cl
180053de5:	ba 01 00 00 00       	mov    $0x1,%edx
180053dea:	48 d3 e2             	shl    %cl,%rdx
180053ded:	4d 8b cd             	mov    %r13,%r9
180053df0:	4c 2b cd             	sub    %rbp,%r9
180053df3:	8b c2                	mov    %edx,%eax
180053df5:	45 8b d5             	mov    %r13d,%r10d
180053df8:	41 8b dd             	mov    %r13d,%ebx
180053dfb:	2b dd                	sub    %ebp,%ebx
180053dfd:	44 2b d5             	sub    %ebp,%r10d
180053e00:	8d 4a ff             	lea    -0x1(%rdx),%ecx
180053e03:	23 cd                	and    %ebp,%ecx
180053e05:	2b c1                	sub    %ecx,%eax
180053e07:	8b c8                	mov    %eax,%ecx
180053e09:	4c 3b c9             	cmp    %rcx,%r9
180053e0c:	0f 43 d8             	cmovae %eax,%ebx
180053e0f:	3b da                	cmp    %edx,%ebx
180053e11:	75 23                	jne    0x180053e36
180053e13:	f6 47 28 04          	testb  $0x4,0x28(%rdi)
180053e17:	74 1d                	je     0x180053e36
180053e19:	33 d2                	xor    %edx,%edx
180053e1b:	48 8b c5             	mov    %rbp,%rax
180053e1e:	49 f7 f4             	div    %r12
180053e21:	49 8b c4             	mov    %r12,%rax
180053e24:	48 2b c2             	sub    %rdx,%rax
180053e27:	4c 3b c8             	cmp    %rax,%r9
180053e2a:	73 05                	jae    0x180053e31
180053e2c:	41 8b da             	mov    %r10d,%ebx
180053e2f:	eb 05                	jmp    0x180053e36
180053e31:	41 8b dc             	mov    %r12d,%ebx
180053e34:	2b da                	sub    %edx,%ebx
180053e36:	4d 85 ff             	test   %r15,%r15
180053e39:	74 09                	je     0x180053e44
180053e3b:	41 8b 47 28          	mov    0x28(%r15),%eax
180053e3f:	3b d8                	cmp    %eax,%ebx
180053e41:	0f 43 d8             	cmovae %eax,%ebx
180053e44:	83 fe 01             	cmp    $0x1,%esi
180053e47:	75 33                	jne    0x180053e7c
180053e49:	48 8b 07             	mov    (%rdi),%rax
180053e4c:	4c 8d 4c 24 70       	lea    0x70(%rsp),%r9
180053e51:	44 8b c3             	mov    %ebx,%r8d
180053e54:	48 8b d5             	mov    %rbp,%rdx
180053e57:	48 8b cf             	mov    %rdi,%rcx
180053e5a:	48 8b 80 c8 00 00 00 	mov    0xc8(%rax),%rax
180053e61:	ff d0                	call   *%rax
180053e63:	0f 1f 00             	nopl   (%rax)