18005ce79:	48 8b ce             	mov    %rsi,%rcx
18005ce7c:	e8 37 55 ff ff       	call   0x1800523b8
18005ce81:	48 8b 07             	mov    (%rdi),%rax
18005ce84:	48 8b cf             	mov    %rdi,%rcx
18005ce87:	44 89 67 48          	mov    %r12d,0x48(%rdi)
18005ce8b:	48 8b 00             	mov    (%rax),%rax
18005ce8e:	ff d0                	call   *%rax
18005ce90:	0f 1f 00             	nopl   (%rax)
18005ce93:	84 c0                	test   %al,%al
18005ce95:	75 1a                	jne    0x18005ceb1
18005ce97:	4c 01 6f 50          	add    %r13,0x50(%rdi)
18005ce9b:	83 7f 48 00          	cmpl   $0x0,0x48(%rdi)
18005ce9f:	7c 10                	jl     0x18005ceb1
18005cea1:	83 67 48 00          	andl   $0x0,0x48(%rdi)
18005cea5:	4d 03 fd             	add    %r13,%r15
18005cea8:	4c 3b fb             	cmp    %rbx,%r15
18005ceab:	0f 82 ef fe ff ff    	jb     0x18005cda0
18005ceb1:	8b 5d 68             	mov    0x68(%rbp),%ebx
18005ceb4:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
18005ceb9:	e8 7a a1 fe ff       	call   0x180047038
18005cebe:	8b c3                	mov    %ebx,%eax
18005cec0:	48 8b 9c 24 58 01 00 	mov    0x158(%rsp),%rbx
18005cec7:	00
18005cec8:	48 81 c4 10 01 00 00 	add    $0x110,%rsp
18005cecf:	41 5f                	pop    %r15
18005ced1:	41 5e                	pop    %r14
18005ced3:	41 5d                	pop    %r13
18005ced5:	41 5c                	pop    %r12
18005ced7:	5f                   	pop    %rdi
18005ced8:	5e                   	pop    %rsi
18005ced9:	5d                   	pop    %rbp
18005ceda:	c3                   	ret
18005cedb:	cc                   	int3
18005cedc:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18005cee1:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
18005cee6:	57                   	push   %rdi
18005cee7:	48 83 ec 20          	sub    $0x20,%rsp
18005ceeb:	48 8b f2             	mov    %rdx,%rsi
18005ceee:	48 8b d9             	mov    %rcx,%rbx
18005cef1:	33 ff                	xor    %edi,%edi
18005cef3:	e8 14 be ff ff       	call   0x180058d0c
18005cef8:	48 85 f6             	test   %rsi,%rsi
18005cefb:	74 7d                	je     0x18005cf7a
18005cefd:	48 8b 06             	mov    (%rsi),%rax
18005cf00:	48 8b ce             	mov    %rsi,%rcx
18005cf03:	48 8b 53 10          	mov    0x10(%rbx),%rdx
18005cf07:	48 8b 40 68          	mov    0x68(%rax),%rax
18005cf0b:	ff d0                	call   *%rax
18005cf0d:	0f 1f 00             	nopl   (%rax)
18005cf10:	4c 8b c0             	mov    %rax,%r8
18005cf13:	48 85 c0             	test   %rax,%rax
18005cf16:	74 62                	je     0x18005cf7a
18005cf18:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
18005cf1c:	48 8b 91 48 01 00 00 	mov    0x148(%rcx),%rdx
18005cf23:	48 85 d2             	test   %rdx,%rdx
18005cf26:	74 0f                	je     0x18005cf37
18005cf28:	8b 4b 4c             	mov    0x4c(%rbx),%ecx
18005cf2b:	48 8b 7a 60          	mov    0x60(%rdx),%rdi
18005cf2f:	48 c1 e9 1d          	shr    $0x1d,%rcx
18005cf33:	48 ff 0c cf          	decq   (%rdi,%rcx,8)
18005cf37:	48 8b 40 48          	mov    0x48(%rax),%rax
18005cf3b:	48 89 43 48          	mov    %rax,0x48(%rbx)
18005cf3f:	49 8b 40 48          	mov    0x48(%r8),%rax
18005cf43:	48 89 43 48          	mov    %rax,0x48(%rbx)
18005cf47:	48 8b 43 08          	mov    0x8(%rbx),%rax
18005cf4b:	48 83 b8 48 01 00 00 	cmpq   $0x0,0x148(%rax)
18005cf52:	00
18005cf53:	74 0b                	je     0x18005cf60
18005cf55:	8b 43 4c             	mov    0x4c(%rbx),%eax
18005cf58:	48 c1 e8 1d          	shr    $0x1d,%rax
18005cf5c:	48 ff 04 c7          	incq   (%rdi,%rax,8)
18005cf60:	49 8b d0             	mov    %r8,%rdx
18005cf63:	48 8b cb             	mov    %rbx,%rcx
18005cf66:	e8 21 00 00 00       	call   0x18005cf8c
18005cf6b:	84 c0                	test   %al,%al
18005cf6d:	74 0b                	je     0x18005cf7a
18005cf6f:	48 8b 43 08          	mov    0x8(%rbx),%rax
18005cf73:	48 ff 80 68 01 00 00 	incq   0x168(%rax)
18005cf7a:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
18005cf7f:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
18005cf84:	48 83 c4 20          	add    $0x20,%rsp
18005cf88:	5f                   	pop    %rdi
18005cf89:	c3                   	ret
18005cf8a:	cc                   	int3
18005cf8b:	cc                   	int3
18005cf8c:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18005cf91:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
18005cf96:	57                   	push   %rdi
18005cf97:	48 83 ec 20          	sub    $0x20,%rsp
18005cf9b:	4c 8b 59 20          	mov    0x20(%rcx),%r11
18005cf9f:	45 33 d2             	xor    %r10d,%r10d
18005cfa2:	48 8b f2             	mov    %rdx,%rsi
18005cfa5:	48 8b d9             	mov    %rcx,%rbx
18005cfa8:	4d 85 db             	test   %r11,%r11
18005cfab:	74 06                	je     0x18005cfb3
18005cfad:	4d 8d 43 58          	lea    0x58(%r11),%r8
18005cfb1:	eb 08                	jmp    0x18005cfbb
18005cfb3:	4c 8b 41 08          	mov    0x8(%rcx),%r8
18005cfb7:	49 83 c0 50          	add    $0x50,%r8
18005cfbb:	48 8b 42 20          	mov    0x20(%rdx),%rax
18005cfbf:	48 85 c0             	test   %rax,%rax
18005cfc2:	74 06                	je     0x18005cfca
18005cfc4:	48 83 c0 58          	add    $0x58,%rax
18005cfc8:	eb 08                	jmp    0x18005cfd2
18005cfca:	48 8b 42 08          	mov    0x8(%rdx),%rax
18005cfce:	48 83 c0 50          	add    $0x50,%rax
18005cfd2:	8b 40 08             	mov    0x8(%rax),%eax
18005cfd5:	41 39 40 08          	cmp    %eax,0x8(%r8)
18005cfd9:	75 66                	jne    0x18005d041
18005cfdb:	41 8b d2             	mov    %r10d,%edx
18005cfde:	4d 85 db             	test   %r11,%r11
18005cfe1:	74 06                	je     0x18005cfe9
18005cfe3:	49 8d 43 58          	lea    0x58(%r11),%rax
18005cfe7:	eb 08                	jmp    0x18005cff1
18005cfe9:	48 8b 43 08          	mov    0x8(%rbx),%rax
18005cfed:	48 83 c0 50          	add    $0x50,%rax
18005cff1:	3b 50 10             	cmp    0x10(%rax),%edx
18005cff4:	73 4e                	jae    0x18005d044
18005cff6:	45 8b c2             	mov    %r10d,%r8d
18005cff9:	49 8d 7b 58          	lea    0x58(%r11),%rdi
18005cffd:	4d 85 db             	test   %r11,%r11
18005d000:	74 05                	je     0x18005d007
18005d002:	48 8b c7             	mov    %rdi,%rax
18005d005:	eb 0c                	jmp    0x18005d013
18005d007:	48 8b 43 08          	mov    0x8(%rbx),%rax
18005d00b:	49 8d 7b 58          	lea    0x58(%r11),%rdi
18005d00f:	48 83 c0 50          	add    $0x50,%rax
18005d013:	44 3b 40 08          	cmp    0x8(%rax),%r8d
18005d017:	73 24                	jae    0x18005d03d
18005d019:	48 8b ce             	mov    %rsi,%rcx
18005d01c:	e8 2f 43 ff ff       	call   0x180051350
18005d021:	48 8b cb             	mov    %rbx,%rcx
18005d024:	4c 8b c8             	mov    %rax,%r9
18005d027:	e8 24 43 ff ff       	call   0x180051350
18005d02c:	48 8b c8             	mov    %rax,%rcx
18005d02f:	41 8b 41 10          	mov    0x10(%r9),%eax
18005d033:	39 41 10             	cmp    %eax,0x10(%rcx)
18005d036:	75 09                	jne    0x18005d041
18005d038:	41 ff c0             	inc    %r8d
18005d03b:	eb c0                	jmp    0x18005cffd
18005d03d:	ff c2                	inc    %edx
18005d03f:	eb 9d                	jmp    0x18005cfde
18005d041:	41 b2 01             	mov    $0x1,%r10b
18005d044:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
18005d049:	41 8a c2             	mov    %r10b,%al
18005d04c:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
18005d051:	48 83 c4 20          	add    $0x20,%rsp
18005d055:	5f                   	pop    %rdi
18005d056:	c3                   	ret
18005d057:	cc                   	int3
18005d058:	40 53                	rex push %rbx
18005d05a:	48 83 ec 20          	sub    $0x20,%rsp
18005d05e:	83 64 24 40 00       	andl   $0x0,0x40(%rsp)
18005d063:	49 8b c8             	mov    %r8,%rcx
18005d066:	4c 8d 44 24 40       	lea    0x40(%rsp),%r8
18005d06b:	49 8b d9             	mov    %r9,%rbx
18005d06e:	e8 75 2c fd ff       	call   0x18002fce8
18005d073:	8b 4c 24 40          	mov    0x40(%rsp),%ecx
18005d077:	48 89 0b             	mov    %rcx,(%rbx)
18005d07a:	8b c0                	mov    %eax,%eax
18005d07c:	48 83 c4 20          	add    $0x20,%rsp
18005d080:	5b                   	pop    %rbx
18005d081:	c3                   	ret
18005d082:	cc                   	int3
18005d083:	cc                   	int3
18005d084:	48 83 ec 28          	sub    $0x28,%rsp
18005d088:	49 8b c9             	mov    %r9,%rcx
18005d08b:	e8 a4 28 fd ff       	call   0x18002f934
18005d090:	33 c0                	xor    %eax,%eax
18005d092:	48 83 c4 28          	add    $0x28,%rsp
18005d096:	c3                   	ret
18005d097:	cc                   	int3
18005d098:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18005d09d:	57                   	push   %rdi
18005d09e:	48 83 ec 20          	sub    $0x20,%rsp
18005d0a2:	8b da                	mov    %edx,%ebx
18005d0a4:	48 8b f9             	mov    %rcx,%rdi
18005d0a7:	e8 1c 00 00 00       	call   0x18005d0c8
18005d0ac:	f6 c3 01             	test   $0x1,%bl
18005d0af:	74 08                	je     0x18005d0b9
18005d0b1:	48 8b cf             	mov    %rdi,%rcx
18005d0b4:	e8 a3 98 fe ff       	call   0x18004695c
18005d0b9:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
18005d0be:	48 8b c7             	mov    %rdi,%rax
18005d0c1:	48 83 c4 20          	add    $0x20,%rsp
18005d0c5:	5f                   	pop    %rdi
18005d0c6:	c3                   	ret
18005d0c7:	cc                   	int3
18005d0c8:	40 53                	rex push %rbx
18005d0ca:	48 83 ec 20          	sub    $0x20,%rsp
18005d0ce:	48 8d 05 4b 68 0e 00 	lea    0xe684b(%rip),%rax        # 0x180143920
18005d0d5:	48 8b d9             	mov    %rcx,%rbx
18005d0d8:	48 89 01             	mov    %rax,(%rcx)
18005d0db:	48 8b 49 58          	mov    0x58(%rcx),%rcx
18005d0df:	48 85 c9             	test   %rcx,%rcx
18005d0e2:	74 05                	je     0x18005d0e9
18005d0e4:	e8 73 98 fe ff       	call   0x18004695c
18005d0e9:	48 8b cb             	mov    %rbx,%rcx
18005d0ec:	e8 cf 46 ff ff       	call   0x1800517c0
18005d0f1:	48 83 c4 20          	add    $0x20,%rsp
18005d0f5:	5b                   	pop    %rbx
18005d0f6:	c3                   	ret
18005d0f7:	cc                   	int3
18005d0f8:	48 8b c4             	mov    %rsp,%rax
18005d0fb:	48 89 58 08          	mov    %rbx,0x8(%rax)
18005d0ff:	48 89 70 10          	mov    %rsi,0x10(%rax)
18005d103:	48 89 78 18          	mov    %rdi,0x18(%rax)
18005d107:	4c 89 68 20          	mov    %r13,0x20(%rax)
18005d10b:	55                   	push   %rbp
18005d10c:	41 56                	push   %r14
18005d10e:	41 57                	push   %r15
18005d110:	48 8d 68 d8          	lea    -0x28(%rax),%rbp
18005d114:	48 81 ec 10 01 00 00 	sub    $0x110,%rsp
18005d11b:	48 8b d9             	mov    %rcx,%rbx
18005d11e:	4c 8b ea             	mov    %rdx,%r13
18005d121:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
18005d126:	e8 3d 9e fe ff       	call   0x180046f68
18005d12b:	4c 8b 55 50          	mov    0x50(%rbp),%r10
18005d12f:	49 8b d5             	mov    %r13,%rdx
18005d132:	48 8b cb             	mov    %rbx,%rcx
18005d135:	4c 89 54 24 20       	mov    %r10,0x20(%rsp)
18005d13a:	e8 e1 46 ff ff       	call   0x180051820
18005d13f:	8b f8                	mov    %eax,%edi
18005d141:	85 c0                	test   %eax,%eax
18005d143:	0f 88 44 02 00 00    	js     0x18005d38d
18005d149:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
18005d14d:	41 be 01 00 00 00    	mov    $0x1,%r14d
18005d153:	83 49 2c 04          	orl    $0x4,0x2c(%rcx)
18005d157:	48 8b 43 08          	mov    0x8(%rbx),%rax
18005d15b:	48 83 b8 b0 03 00 00 	cmpq   $0x0,0x3b0(%rax)
18005d162:	00
18005d163:	0f 85 08 01 00 00    	jne    0x18005d271
18005d169:	bf e0 00 00 00       	mov    $0xe0,%edi
18005d16e:	8b cf                	mov    %edi,%ecx
18005d170:	e8 9f 97 fe ff       	call   0x180046914
18005d175:	48 85 c0             	test   %rax,%rax
18005d178:	74 0d                	je     0x18005d187
18005d17a:	48 8b c8             	mov    %rax,%rcx
18005d17d:	e8 e6 9d fe ff       	call   0x180046f68
18005d182:	48 8b c8             	mov    %rax,%rcx
18005d185:	eb 02                	jmp    0x18005d189
18005d187:	33 c9                	xor    %ecx,%ecx
18005d189:	48 85 c9             	test   %rcx,%rcx
18005d18c:	75 0a                	jne    0x18005d198
18005d18e:	bf 9a 00 00 c0       	mov    $0xc000009a,%edi
18005d193:	e9 f5 01 00 00       	jmp    0x18005d38d
18005d198:	48 8b 43 08          	mov    0x8(%rbx),%rax
18005d19c:	44 88 b0 dc 03 00 00 	mov    %r14b,0x3dc(%rax)
18005d1a3:	48 8b 43 08          	mov    0x8(%rbx),%rax
18005d1a7:	48 89 88 b0 03 00 00 	mov    %rcx,0x3b0(%rax)
18005d1ae:	48 8b cf             	mov    %rdi,%rcx
18005d1b1:	e8 5e 97 fe ff       	call   0x180046914
18005d1b6:	48 85 c0             	test   %rax,%rax
18005d1b9:	74 0d                	je     0x18005d1c8
18005d1bb:	48 8b c8             	mov    %rax,%rcx
18005d1be:	e8 a5 9d fe ff       	call   0x180046f68
18005d1c3:	48 8b f0             	mov    %rax,%rsi
18005d1c6:	eb 02                	jmp    0x18005d1ca
18005d1c8:	33 f6                	xor    %esi,%esi
18005d1ca:	48 85 f6             	test   %rsi,%rsi
18005d1cd:	74 bf                	je     0x18005d18e
18005d1cf:	8a 4b 2a             	mov    0x2a(%rbx),%cl
18005d1d2:	45 33 c0             	xor    %r8d,%r8d
18005d1d5:	4d 8b ce             	mov    %r14,%r9
18005d1d8:	49 d3 e1             	shl    %cl,%r9
18005d1db:	48 8d 4e 60          	lea    0x60(%rsi),%rcx
18005d1df:	41 8d 50 03          	lea    0x3(%r8),%edx
18005d1e3:	e8 b4 99 fe ff       	call   0x180046b9c
18005d1e8:	8b f8                	mov    %eax,%edi
18005d1ea:	85 c0                	test   %eax,%eax
18005d1ec:	78 33                	js     0x18005d221
18005d1ee:	48 8b 43 20          	mov    0x20(%rbx),%rax
18005d1f2:	48 85 c0             	test   %rax,%rax
18005d1f5:	74 06                	je     0x18005d1fd
18005d1f7:	48 83 c0 58          	add    $0x58,%rax
18005d1fb:	eb 08                	jmp    0x18005d205
18005d1fd:	48 8b 43 08          	mov    0x8(%rbx),%rax
18005d201:	48 83 c0 50          	add    $0x50,%rax
18005d205:	8b 48 10             	mov    0x10(%rax),%ecx
18005d208:	c1 e1 03             	shl    $0x3,%ecx
18005d20b:	48 83 c1 18          	add    $0x18,%rcx
18005d20f:	e8 00 97 fe ff       	call   0x180046914
18005d214:	48 8b c8             	mov    %rax,%rcx
18005d217:	48 85 c0             	test   %rax,%rax
18005d21a:	75 1b                	jne    0x18005d237
18005d21c:	bf 9a 00 00 c0       	mov    $0xc000009a,%edi
18005d221:	48 8b 06             	mov    (%rsi),%rax
18005d224:	41 8b d6             	mov    %r14d,%edx
18005d227:	48 8b ce             	mov    %rsi,%rcx
18005d22a:	48 8b 00             	mov    (%rax),%rax
18005d22d:	ff d0                	call   *%rax
18005d22f:	0f 1f 00             	nopl   (%rax)
18005d232:	e9 56 01 00 00       	jmp    0x18005d38d
18005d237:	48 8b 43 08          	mov    0x8(%rbx),%rax
18005d23b:	33 ff                	xor    %edi,%edi
18005d23d:	49 8b d6             	mov    %r14,%rdx
18005d240:	44 88 b0 24 04 00 00 	mov    %r14b,0x424(%rax)
18005d247:	48 8b 43 08          	mov    0x8(%rbx),%rax
18005d24b:	48 89 b0 f8 03 00 00 	mov    %rsi,0x3f8(%rax)
18005d252:	48 8b 43 08          	mov    0x8(%rbx),%rax
18005d256:	48 89 88 18 04 00 00 	mov    %rcx,0x418(%rax)
18005d25d:	48 8b 43 08          	mov    0x8(%rbx),%rax
18005d261:	8a 4b 2a             	mov    0x2a(%rbx),%cl
18005d264:	48 d3 e2             	shl    %cl,%rdx
18005d267:	89 90 20 04 00 00    	mov    %edx,0x420(%rax)
18005d26d:	48 8b 43 08          	mov    0x8(%rbx),%rax
18005d271:	48 8b 88 90 00 00 00 	mov    0x90(%rax),%rcx
18005d278:	48 85 c9             	test   %rcx,%rcx
18005d27b:	74 20                	je     0x18005d29d
18005d27d:	48 8b 89 60 01 00 00 	mov    0x160(%rcx),%rcx
18005d284:	48 8b 53 10          	mov    0x10(%rbx),%rdx
18005d288:	48 8b 01             	mov    (%rcx),%rax
18005d28b:	48 8b 40 68          	mov    0x68(%rax),%rax
18005d28f:	ff d0                	call   *%rax
18005d291:	0f 1f 00             	nopl   (%rax)
18005d294:	48 85 c0             	test   %rax,%rax
18005d297:	0f 85 f0 00 00 00    	jne    0x18005d38d
18005d29d:	48 8b 43 20          	mov    0x20(%rbx),%rax
18005d2a1:	48 85 c0             	test   %rax,%rax
18005d2a4:	74 06                	je     0x18005d2ac
18005d2a6:	48 83 c0 38          	add    $0x38,%rax
18005d2aa:	eb 08                	jmp    0x18005d2b4
18005d2ac:	48 8b 43 08          	mov    0x8(%rbx),%rax
18005d2b0:	48 83 c0 30          	add    $0x30,%rax
18005d2b4:	8a 4b 2a             	mov    0x2a(%rbx),%cl
18005d2b7:	4c 8b 78 08          	mov    0x8(%rax),%r15
18005d2bb:	b8 fc ff ff ff       	mov    $0xfffffffc,%eax
18005d2c0:	49 d3 ef             	shr    %cl,%r15
18005d2c3:	49 8d 77 1f          	lea    0x1f(%r15),%rsi
18005d2c7:	48 c1 ee 03          	shr    $0x3,%rsi
18005d2cb:	48 23 f0             	and    %rax,%rsi
18005d2ce:	48 8b ce             	mov    %rsi,%rcx
18005d2d1:	e8 3e 96 fe ff       	call   0x180046914
18005d2d6:	4c 8b f0             	mov    %rax,%r14
18005d2d9:	48 85 c0             	test   %rax,%rax
18005d2dc:	0f 84 ac fe ff ff    	je     0x18005d18e
18005d2e2:	48 83 7b 40 00       	cmpq   $0x0,0x40(%rbx)
18005d2e7:	75 0e                	jne    0x18005d2f7
18005d2e9:	4c 8b c6             	mov    %rsi,%r8
18005d2ec:	83 ca ff             	or     $0xffffffff,%edx
18005d2ef:	48 8b c8             	mov    %rax,%rcx
18005d2f2:	e8 89 89 0d 00       	call   0x180135c80
18005d2f7:	44 89 7b 50          	mov    %r15d,0x50(%rbx)
18005d2fb:	4c 89 73 58          	mov    %r14,0x58(%rbx)
18005d2ff:	48 83 7b 40 00       	cmpq   $0x0,0x40(%rbx)
18005d304:	0f 85 83 00 00 00    	jne    0x18005d38d
18005d30a:	49 8b 45 10          	mov    0x10(%r13),%rax
18005d30e:	8a 48 1e             	mov    0x1e(%rax),%cl
18005d311:	84 c9                	test   %cl,%cl
18005d313:	79 78                	jns    0x18005d38d