180049e8a:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
180049e8f:	48 83 c4 20          	add    $0x20,%rsp
180049e93:	5f                   	pop    %rdi
180049e94:	c3                   	ret
180049e95:	cc                   	int3
180049e96:	cc                   	int3
180049e97:	cc                   	int3
180049e98:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
180049e9d:	57                   	push   %rdi
180049e9e:	48 83 ec 20          	sub    $0x20,%rsp
180049ea2:	48 8d b9 18 01 00 00 	lea    0x118(%rcx),%rdi
180049ea9:	48 8b 07             	mov    (%rdi),%rax
180049eac:	48 8b 18             	mov    (%rax),%rbx
180049eaf:	48 3b c7             	cmp    %rdi,%rax
180049eb2:	74 45                	je     0x180049ef9
180049eb4:	8b 48 20             	mov    0x20(%rax),%ecx
180049eb7:	f6 c1 04             	test   $0x4,%cl
180049eba:	74 08                	je     0x180049ec4
180049ebc:	83 e1 fb             	and    $0xfffffffb,%ecx
180049ebf:	89 48 20             	mov    %ecx,0x20(%rax)
180049ec2:	eb 26                	jmp    0x180049eea
180049ec4:	f6 c1 02             	test   $0x2,%cl
180049ec7:	74 21                	je     0x180049eea
180049ec9:	48 8b 08             	mov    (%rax),%rcx
180049ecc:	48 39 41 08          	cmp    %rax,0x8(%rcx)
180049ed0:	75 20                	jne    0x180049ef2
180049ed2:	48 8b 50 08          	mov    0x8(%rax),%rdx
180049ed6:	48 39 02             	cmp    %rax,(%rdx)
180049ed9:	75 17                	jne    0x180049ef2
180049edb:	48 89 0a             	mov    %rcx,(%rdx)
180049ede:	48 89 51 08          	mov    %rdx,0x8(%rcx)
180049ee2:	48 8b c8             	mov    %rax,%rcx
180049ee5:	e8 72 ca ff ff       	call   0x18004695c
180049eea:	48 8b c3             	mov    %rbx,%rax
180049eed:	48 8b 1b             	mov    (%rbx),%rbx
180049ef0:	eb bd                	jmp    0x180049eaf
180049ef2:	b9 03 00 00 00       	mov    $0x3,%ecx
180049ef7:	cd 29                	int    $0x29
180049ef9:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
180049efe:	48 83 c4 20          	add    $0x20,%rsp
180049f02:	5f                   	pop    %rdi
180049f03:	c3                   	ret
180049f04:	cc                   	int3
180049f05:	cc                   	int3
180049f06:	cc                   	int3
180049f07:	cc                   	int3
180049f08:	48 83 ec 28          	sub    $0x28,%rsp
180049f0c:	8b 91 08 01 00 00    	mov    0x108(%rcx),%edx
180049f12:	e8 0d 4c 0f 00       	call   0x18013eb24
180049f17:	48 83 c4 28          	add    $0x28,%rsp
180049f1b:	c3                   	ret
180049f1c:	cc                   	int3
180049f1d:	cc                   	int3
180049f1e:	cc                   	int3
180049f1f:	cc                   	int3
180049f20:	48 8d 91 18 01 00 00 	lea    0x118(%rcx),%rdx
180049f27:	33 c0                	xor    %eax,%eax
180049f29:	48 8b 0a             	mov    (%rdx),%rcx
180049f2c:	eb 15                	jmp    0x180049f43
180049f2e:	44 8b 41 20          	mov    0x20(%rcx),%r8d
180049f32:	41 f6 c0 01          	test   $0x1,%r8b
180049f36:	74 08                	je     0x180049f40
180049f38:	41 f6 c0 02          	test   $0x2,%r8b
180049f3c:	75 02                	jne    0x180049f40
180049f3e:	ff c0                	inc    %eax
180049f40:	48 8b 09             	mov    (%rcx),%rcx
180049f43:	48 3b ca             	cmp    %rdx,%rcx
180049f46:	75 e6                	jne    0x180049f2e
180049f48:	c3                   	ret
180049f49:	cc                   	int3
180049f4a:	cc                   	int3
180049f4b:	cc                   	int3
180049f4c:	48 83 ec 28          	sub    $0x28,%rsp
180049f50:	41 b0 20             	mov    $0x20,%r8b
180049f53:	e8 b8 d5 ff ff       	call   0x180047510
180049f58:	48 83 c4 28          	add    $0x28,%rsp
180049f5c:	c3                   	ret
180049f5d:	cc                   	int3
180049f5e:	cc                   	int3
180049f5f:	cc                   	int3
180049f60:	48 8b c4             	mov    %rsp,%rax
180049f63:	48 89 58 08          	mov    %rbx,0x8(%rax)
180049f67:	48 89 68 10          	mov    %rbp,0x10(%rax)
180049f6b:	48 89 70 18          	mov    %rsi,0x18(%rax)
180049f6f:	48 89 78 20          	mov    %rdi,0x20(%rax)
180049f73:	41 56                	push   %r14
180049f75:	48 83 ec 20          	sub    $0x20,%rsp
180049f79:	48 8b fa             	mov    %rdx,%rdi
180049f7c:	48 8b e9             	mov    %rcx,%rbp
180049f7f:	41 80 f8 20          	cmp    $0x20,%r8b
180049f83:	74 07                	je     0x180049f8c
180049f85:	b8 0d 00 00 c0       	mov    $0xc000000d,%eax
180049f8a:	eb 67                	jmp    0x180049ff3
180049f8c:	45 33 f6             	xor    %r14d,%r14d
180049f8f:	33 c0                	xor    %eax,%eax
180049f91:	4d 85 c9             	test   %r9,%r9
180049f94:	74 07                	je     0x180049f9d
180049f96:	b8 02 00 00 c0       	mov    $0xc0000002,%eax
180049f9b:	eb 56                	jmp    0x180049ff3
180049f9d:	4c 8b 42 70          	mov    0x70(%rdx),%r8
180049fa1:	4d 85 c0             	test   %r8,%r8
180049fa4:	74 07                	je     0x180049fad
180049fa6:	e8 fd 00 00 00       	call   0x18004a0a8
180049fab:	eb 46                	jmp    0x180049ff3
180049fad:	48 8d b1 18 01 00 00 	lea    0x118(%rcx),%rsi
180049fb4:	48 8b 1e             	mov    (%rsi),%rbx
180049fb7:	eb 35                	jmp    0x180049fee
180049fb9:	8b 4b 20             	mov    0x20(%rbx),%ecx
180049fbc:	f6 c1 08             	test   $0x8,%cl
180049fbf:	74 2a                	je     0x180049feb
180049fc1:	83 e1 f7             	and    $0xfffffff7,%ecx
180049fc4:	4c 8b c3             	mov    %rbx,%r8
180049fc7:	89 4b 20             	mov    %ecx,0x20(%rbx)
180049fca:	48 8b d7             	mov    %rdi,%rdx
180049fcd:	48 8b cd             	mov    %rbp,%rcx
180049fd0:	41 ff c6             	inc    %r14d
180049fd3:	e8 d0 00 00 00       	call   0x18004a0a8
180049fd8:	85 c0                	test   %eax,%eax
180049fda:	79 06                	jns    0x180049fe2
180049fdc:	83 63 20 fe          	andl   $0xfffffffe,0x20(%rbx)
180049fe0:	33 c0                	xor    %eax,%eax
180049fe2:	44 3b b7 88 00 00 00 	cmp    0x88(%rdi),%r14d
180049fe9:	74 08                	je     0x180049ff3
180049feb:	48 8b 1b             	mov    (%rbx),%rbx
180049fee:	48 3b de             	cmp    %rsi,%rbx
180049ff1:	75 c6                	jne    0x180049fb9
180049ff3:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
180049ff8:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
180049ffd:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
18004a002:	48 8b 7c 24 48       	mov    0x48(%rsp),%rdi
18004a007:	48 83 c4 20          	add    $0x20,%rsp
18004a00b:	41 5e                	pop    %r14
18004a00d:	c3                   	ret
18004a00e:	cc                   	int3
18004a00f:	cc                   	int3
18004a010:	48 83 ec 28          	sub    $0x28,%rsp
18004a014:	41 80 f8 20          	cmp    $0x20,%r8b
18004a018:	75 1c                	jne    0x18004a036
18004a01a:	4c 8b 4a 70          	mov    0x70(%rdx),%r9
18004a01e:	4c 8b 42 78          	mov    0x78(%rdx),%r8
18004a022:	49 8b 49 10          	mov    0x10(%r9),%rcx
18004a026:	4d 03 41 18          	add    0x18(%r9),%r8
18004a02a:	48 8b 01             	mov    (%rcx),%rax
18004a02d:	48 8b 40 48          	mov    0x48(%rax),%rax
18004a031:	ff d0                	call   *%rax
18004a033:	0f 1f 00             	nopl   (%rax)
18004a036:	48 83 c4 28          	add    $0x28,%rsp
18004a03a:	c3                   	ret
18004a03b:	cc                   	int3
18004a03c:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18004a041:	57                   	push   %rdi
18004a042:	48 83 ec 20          	sub    $0x20,%rsp
18004a046:	8b ba a0 00 00 00    	mov    0xa0(%rdx),%edi
18004a04c:	80 ba 99 00 00 00 20 	cmpb   $0x20,0x99(%rdx)
18004a053:	75 42                	jne    0x18004a097
18004a055:	8b ba a0 00 00 00    	mov    0xa0(%rdx),%edi
18004a05b:	48 8b 5a 70          	mov    0x70(%rdx),%rbx
18004a05f:	85 ff                	test   %edi,%edi
18004a061:	79 34                	jns    0x18004a097
18004a063:	8b 43 20             	mov    0x20(%rbx),%eax
18004a066:	a8 01                	test   $0x1,%al
18004a068:	74 2d                	je     0x18004a097
18004a06a:	83 e0 fe             	and    $0xfffffffe,%eax
18004a06d:	89 43 20             	mov    %eax,0x20(%rbx)
18004a070:	48 8b 01             	mov    (%rcx),%rax
18004a073:	48 8b 5b 10          	mov    0x10(%rbx),%rbx
18004a077:	48 8b 40 10          	mov    0x10(%rax),%rax
18004a07b:	ff d0                	call   *%rax
18004a07d:	0f 1f 00             	nopl   (%rax)
18004a080:	48 8b d0             	mov    %rax,%rdx
18004a083:	4c 8d 83 bc 01 00 00 	lea    0x1bc(%rbx),%r8
18004a08a:	44 8b cf             	mov    %edi,%r9d
18004a08d:	b9 52 04 00 00       	mov    $0x452,%ecx
18004a092:	e8 e1 ca ff ff       	call   0x180046b78
18004a097:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
18004a09c:	8b c7                	mov    %edi,%eax
18004a09e:	48 83 c4 20          	add    $0x20,%rsp
18004a0a2:	5f                   	pop    %rdi
18004a0a3:	c3                   	ret
18004a0a4:	cc                   	int3
18004a0a5:	cc                   	int3
18004a0a6:	cc                   	int3
18004a0a7:	cc                   	int3
18004a0a8:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18004a0ad:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
18004a0b2:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
18004a0b7:	57                   	push   %rdi
18004a0b8:	41 56                	push   %r14
18004a0ba:	41 57                	push   %r15
18004a0bc:	48 83 ec 30          	sub    $0x30,%rsp
18004a0c0:	49 8b 40 10          	mov    0x10(%r8),%rax
18004a0c4:	4c 8b f9             	mov    %rcx,%r15
18004a0c7:	8b aa 80 00 00 00    	mov    0x80(%rdx),%ebp
18004a0cd:	b9 e0 00 00 00       	mov    $0xe0,%ecx
18004a0d2:	ff cd                	dec    %ebp
18004a0d4:	4d 8b f0             	mov    %r8,%r14
18004a0d7:	48 8b f2             	mov    %rdx,%rsi
18004a0da:	33 ff                	xor    %edi,%edi
18004a0dc:	44 8b 88 e4 00 00 00 	mov    0xe4(%rax),%r9d
18004a0e3:	41 03 e9             	add    %r9d,%ebp
18004a0e6:	41 f7 d9             	neg    %r9d
18004a0e9:	41 23 e9             	and    %r9d,%ebp
18004a0ec:	e8 23 c8 ff ff       	call   0x180046914
18004a0f1:	48 85 c0             	test   %rax,%rax
18004a0f4:	74 0d                	je     0x18004a103
18004a0f6:	48 8b c8             	mov    %rax,%rcx
18004a0f9:	e8 6a ce ff ff       	call   0x180046f68
18004a0fe:	48 8b d8             	mov    %rax,%rbx
18004a101:	eb 02                	jmp    0x18004a105
18004a103:	33 db                	xor    %ebx,%ebx
18004a105:	48 85 db             	test   %rbx,%rbx
18004a108:	75 07                	jne    0x18004a111
18004a10a:	bf 9a 00 00 c0       	mov    $0xc000009a,%edi
18004a10f:	eb 6f                	jmp    0x18004a180
18004a111:	80 be 98 00 00 00 04 	cmpb   $0x4,0x98(%rsi)
18004a118:	75 1c                	jne    0x18004a136
18004a11a:	44 8b cd             	mov    %ebp,%r9d
18004a11d:	c6 44 24 20 01       	movb   $0x1,0x20(%rsp)
18004a122:	45 33 c0             	xor    %r8d,%r8d
18004a125:	48 8b d6             	mov    %rsi,%rdx
18004a128:	48 8b cb             	mov    %rbx,%rcx
18004a12b:	e8 0c d0 ff ff       	call   0x18004713c
18004a130:	8b f8                	mov    %eax,%edi
18004a132:	85 c0                	test   %eax,%eax
18004a134:	78 32                	js     0x18004a168
18004a136:	48 8b 4e 78          	mov    0x78(%rsi),%rcx
18004a13a:	48 8b d3             	mov    %rbx,%rdx
18004a13d:	48 89 4b 78          	mov    %rcx,0x78(%rbx)
18004a141:	89 ab 80 00 00 00    	mov    %ebp,0x80(%rbx)
18004a147:	8a 8e 98 00 00 00    	mov    0x98(%rsi),%cl
18004a14d:	88 8b 98 00 00 00    	mov    %cl,0x98(%rbx)
18004a153:	48 8b ce             	mov    %rsi,%rcx
18004a156:	4c 89 73 70          	mov    %r14,0x70(%rbx)
18004a15a:	4c 89 bb d8 00 00 00 	mov    %r15,0xd8(%rbx)
18004a161:	e8 46 cf ff ff       	call   0x1800470ac
18004a166:	33 db                	xor    %ebx,%ebx
18004a168:	48 85 db             	test   %rbx,%rbx
18004a16b:	74 13                	je     0x18004a180
18004a16d:	48 8b 03             	mov    (%rbx),%rax
18004a170:	ba 01 00 00 00       	mov    $0x1,%edx
18004a175:	48 8b cb             	mov    %rbx,%rcx
18004a178:	48 8b 00             	mov    (%rax),%rax
18004a17b:	ff d0                	call   *%rax
18004a17d:	0f 1f 00             	nopl   (%rax)
18004a180:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
18004a185:	8b c7                	mov    %edi,%eax
18004a187:	48 8b 6c 24 58       	mov    0x58(%rsp),%rbp
18004a18c:	48 8b 74 24 60       	mov    0x60(%rsp),%rsi
18004a191:	48 83 c4 30          	add    $0x30,%rsp
18004a195:	41 5f                	pop    %r15
18004a197:	41 5e                	pop    %r14
18004a199:	5f                   	pop    %rdi
18004a19a:	c3                   	ret
18004a19b:	cc                   	int3
18004a19c:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18004a1a1:	57                   	push   %rdi
18004a1a2:	48 83 ec 20          	sub    $0x20,%rsp
18004a1a6:	8b da                	mov    %edx,%ebx
18004a1a8:	48 8b f9             	mov    %rcx,%rdi
18004a1ab:	e8 1c 00 00 00       	call   0x18004a1cc
18004a1b0:	f6 c3 01             	test   $0x1,%bl
18004a1b3:	74 08                	je     0x18004a1bd
18004a1b5:	48 8b cf             	mov    %rdi,%rcx
18004a1b8:	e8 9f c7 ff ff       	call   0x18004695c
18004a1bd:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
18004a1c2:	48 8b c7             	mov    %rdi,%rax
18004a1c5:	48 83 c4 20          	add    $0x20,%rsp
18004a1c9:	5f                   	pop    %rdi
18004a1ca:	c3                   	ret
18004a1cb:	cc                   	int3
18004a1cc:	40 53                	rex push %rbx
18004a1ce:	48 83 ec 20          	sub    $0x20,%rsp
18004a1d2:	48 8d 05 f7 92 0f 00 	lea    0xf92f7(%rip),%rax        # 0x1801434d0
18004a1d9:	48 8b d9             	mov    %rcx,%rbx
18004a1dc:	48 89 01             	mov    %rax,(%rcx)
18004a1df:	8b 89 18 02 00 00    	mov    0x218(%rcx),%ecx
18004a1e5:	83 f9 ff             	cmp    $0xffffffff,%ecx
18004a1e8:	74 05                	je     0x18004a1ef
18004a1ea:	e8 c9 c7 fd ff       	call   0x1800269b8
18004a1ef:	48 8b cb             	mov    %rbx,%rcx
18004a1f2:	48 83 c4 20          	add    $0x20,%rsp
18004a1f6:	5b                   	pop    %rbx
18004a1f7:	e9 e0 66 00 00       	jmp    0x1800508dc
18004a1fc:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
18004a201:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
18004a206:	57                   	push   %rdi
18004a207:	48 83 ec 20          	sub    $0x20,%rsp
18004a20b:	48 83 64 24 30 00    	andq   $0x0,0x30(%rsp)
18004a211:	48 8b d9             	mov    %rcx,%rbx
18004a214:	89 91 18 02 00 00    	mov    %edx,0x218(%rcx)
18004a21a:	e8 a5 f1 00 00       	call   0x1800593c4
18004a21f:	8b f8                	mov    %eax,%edi
18004a221:	85 c0                	test   %eax,%eax
18004a223:	0f 88 d7 00 00 00    	js     0x18004a300
18004a229:	8b 8b e8 00 00 00    	mov    0xe8(%rbx),%ecx
18004a22f:	b8 01 00 00 00       	mov    $0x1,%eax
18004a234:	d3 e0                	shl    %cl,%eax
18004a236:	48 63 c8             	movslq %eax,%rcx
18004a239:	e8 d6 c6 ff ff       	call   0x180046914
18004a23e:	48 89 83 00 01 00 00 	mov    %rax,0x100(%rbx)
18004a245:	48 85 c0             	test   %rax,%rax
18004a248:	75 0a                	jne    0x18004a254
18004a24a:	bf 9a 00 00 c0       	mov    $0xc000009a,%edi
18004a24f:	e9 ac 00 00 00       	jmp    0x18004a300
18004a254:	48 8b cb             	mov    %rbx,%rcx
18004a257:	e8 28 f4 00 00       	call   0x180059684
18004a25c:	8b f8                	mov    %eax,%edi
18004a25e:	85 c0                	test   %eax,%eax
18004a260:	0f 88 9a 00 00 00    	js     0x18004a300
18004a266:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
18004a26b:	48 8b cb             	mov    %rbx,%rcx
18004a26e:	e8 6d f5 00 00       	call   0x1800597e0
18004a273:	48 8b 74 24 30       	mov    0x30(%rsp),%rsi
18004a278:	8b f8                	mov    %eax,%edi
18004a27a:	85 c0                	test   %eax,%eax
18004a27c:	78 75                	js     0x18004a2f3
18004a27e:	48 8b ce             	mov    %rsi,%rcx
18004a281:	e8 ae ee 00 00       	call   0x180059134
18004a286:	83 f8 ff             	cmp    $0xffffffff,%eax
18004a289:	74 26                	je     0x18004a2b1
18004a28b:	8b c0                	mov    %eax,%eax
18004a28d:	48 8d 0c c0          	lea    (%rax,%rax,8),%rcx
18004a291:	48 03 c9             	add    %rcx,%rcx
18004a294:	8b 44 ce 48          	mov    0x48(%rsi,%rcx,8),%eax
18004a298:	89 83 90 01 00 00    	mov    %eax,0x190(%rbx)
18004a29e:	48 8b 44 ce 38       	mov    0x38(%rsi,%rcx,8),%rax
18004a2a3:	48 89 83 98 01 00 00 	mov    %rax,0x198(%rbx)
18004a2aa:	48 8b 44 ce 40       	mov    0x40(%rsi,%rcx,8),%rax
18004a2af:	eb 11                	jmp    0x18004a2c2
18004a2b1:	83 a3 90 01 00 00 00 	andl   $0x0,0x190(%rbx)
18004a2b8:	48 83 a3 98 01 00 00 	andq   $0x0,0x198(%rbx)
18004a2bf:	00
18004a2c0:	33 c0                	xor    %eax,%eax
18004a2c2:	4c 8d 83 00 02 00 00 	lea    0x200(%rbx),%r8
18004a2c9:	48 89 83 a0 01 00 00 	mov    %rax,0x1a0(%rbx)
18004a2d0:	48 8b d6             	mov    %rsi,%rdx
18004a2d3:	48 8b cb             	mov    %rbx,%rcx
18004a2d6:	e8 65 66 00 00       	call   0x180050940
18004a2db:	48 83 bb a0 01 00 00 	cmpq   $0x0,0x1a0(%rbx)
18004a2e2:	00
18004a2e3:	88 83 f4 01 00 00    	mov    %al,0x1f4(%rbx)
18004a2e9:	76 08                	jbe    0x18004a2f3
18004a2eb:	48 8b cb             	mov    %rbx,%rcx
18004a2ee:	e8 01 68 00 00       	call   0x180050af4
18004a2f3:	48 85 f6             	test   %rsi,%rsi
18004a2f6:	74 08                	je     0x18004a300
18004a2f8:	48 8b ce             	mov    %rsi,%rcx
18004a2fb:	e8 5c c6 ff ff       	call   0x18004695c
18004a300:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
18004a305:	8b c7                	mov    %edi,%eax