180064e6f:	85 c0                	test   %eax,%eax
180064e71:	79 0b                	jns    0x180064e7e
180064e73:	e8 e0 13 fc ff       	call   0x180026258
180064e78:	89 05 62 fd 13 00    	mov    %eax,0x13fd62(%rip)        # 0x1801a4be0
180064e7e:	45 33 c0             	xor    %r8d,%r8d
180064e81:	33 d2                	xor    %edx,%edx
180064e83:	8b cf                	mov    %edi,%ecx
180064e85:	e8 da 2c 00 00       	call   0x180067b64
180064e8a:	85 c0                	test   %eax,%eax
180064e8c:	78 38                	js     0x180064ec6
180064e8e:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
180064e93:	48 8d 4c 24 38       	lea    0x38(%rsp),%rcx
180064e98:	e8 1f cd ff ff       	call   0x180061bbc
180064e9d:	8b 43 10             	mov    0x10(%rbx),%eax
180064ea0:	33 d2                	xor    %edx,%edx
180064ea2:	f7 74 24 38          	divl   0x38(%rsp)
180064ea6:	33 d2                	xor    %edx,%edx
180064ea8:	44 8b c0             	mov    %eax,%r8d
180064eab:	8b 43 14             	mov    0x14(%rbx),%eax
180064eae:	f7 74 24 40          	divl   0x40(%rsp)
180064eb2:	41 8b d0             	mov    %r8d,%edx
180064eb5:	8b c8                	mov    %eax,%ecx
180064eb7:	e8 08 33 00 00       	call   0x1800681c4
180064ebc:	8b 4b 18             	mov    0x18(%rbx),%ecx
180064ebf:	e8 64 33 00 00       	call   0x180068228
180064ec4:	33 c0                	xor    %eax,%eax
180064ec6:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
180064ecb:	48 83 c4 20          	add    $0x20,%rsp
180064ecf:	5f                   	pop    %rdi
180064ed0:	c3                   	ret
180064ed1:	cc                   	int3
180064ed2:	cc                   	int3
180064ed3:	cc                   	int3
180064ed4:	e9 c7 29 00 00       	jmp    0x1800678a0
180064ed9:	cc                   	int3
180064eda:	cc                   	int3
180064edb:	cc                   	int3
180064edc:	45 33 c9             	xor    %r9d,%r9d
180064edf:	48 85 d2             	test   %rdx,%rdx
180064ee2:	74 27                	je     0x180064f0b
180064ee4:	41 8b c0             	mov    %r8d,%eax
180064ee7:	48 8d 0c 40          	lea    (%rax,%rax,2),%rcx
180064eeb:	48 8d 04 8a          	lea    (%rdx,%rcx,4),%rax
180064eef:	eb 0f                	jmp    0x180064f00
180064ef1:	83 3a 50             	cmpl   $0x50,(%rdx)
180064ef4:	75 06                	jne    0x180064efc
180064ef6:	83 7a 04 19          	cmpl   $0x19,0x4(%rdx)
180064efa:	74 0f                	je     0x180064f0b
180064efc:	48 83 c2 0c          	add    $0xc,%rdx
180064f00:	48 3b d0             	cmp    %rax,%rdx
180064f03:	75 ec                	jne    0x180064ef1
180064f05:	41 b9 01 00 00 c0    	mov    $0xc0000001,%r9d
180064f0b:	41 8b c1             	mov    %r9d,%eax
180064f0e:	c3                   	ret
180064f0f:	cc                   	int3
180064f10:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
180064f15:	55                   	push   %rbp
180064f16:	56                   	push   %rsi
180064f17:	57                   	push   %rdi
180064f18:	48 83 ec 20          	sub    $0x20,%rsp
180064f1c:	40 8a fa             	mov    %dl,%dil
180064f1f:	c6 44 24 48 20       	movb   $0x20,0x48(%rsp)
180064f24:	8b 51 08             	mov    0x8(%rcx),%edx
180064f27:	48 8b d9             	mov    %rcx,%rbx
180064f2a:	8b 49 0c             	mov    0xc(%rcx),%ecx
180064f2d:	e8 7a 30 00 00       	call   0x180067fac
180064f32:	48 8b 35 97 fc 13 00 	mov    0x13fc97(%rip),%rsi        # 0x1801a4bd0
180064f39:	48 8d 54 24 50       	lea    0x50(%rsp),%rdx
180064f3e:	8b 6b 1c             	mov    0x1c(%rbx),%ebp
180064f41:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
180064f46:	88 44 24 49          	mov    %al,0x49(%rsp)
180064f4a:	e8 6d cc ff ff       	call   0x180061bbc
180064f4f:	45 33 c0             	xor    %r8d,%r8d
180064f52:	40 84 ff             	test   %dil,%dil
180064f55:	75 0d                	jne    0x180064f64
180064f57:	4c 89 43 10          	mov    %r8,0x10(%rbx)
180064f5b:	8b 43 20             	mov    0x20(%rbx),%eax
180064f5e:	0f af 43 1c          	imul   0x1c(%rbx),%eax
180064f62:	eb 26                	jmp    0x180064f8a
180064f64:	8b 43 10             	mov    0x10(%rbx),%eax
180064f67:	33 d2                	xor    %edx,%edx
180064f69:	f7 74 24 40          	divl   0x40(%rsp)
180064f6d:	33 d2                	xor    %edx,%edx
180064f6f:	8b f8                	mov    %eax,%edi
180064f71:	8b 43 14             	mov    0x14(%rbx),%eax
180064f74:	f7 74 24 50          	divl   0x50(%rsp)
180064f78:	0f af c5             	imul   %ebp,%eax
180064f7b:	8b c8                	mov    %eax,%ecx
180064f7d:	48 8b c5             	mov    %rbp,%rax
180064f80:	48 03 cf             	add    %rdi,%rcx
180064f83:	48 2b c7             	sub    %rdi,%rax
180064f86:	48 8d 34 4e          	lea    (%rsi,%rcx,2),%rsi
180064f8a:	48 8d 14 46          	lea    (%rsi,%rax,2),%rdx
180064f8e:	48 8b ca             	mov    %rdx,%rcx
180064f91:	48 2b ce             	sub    %rsi,%rcx
180064f94:	48 ff c1             	inc    %rcx
180064f97:	48 d1 e9             	shr    $1,%rcx
180064f9a:	48 3b f2             	cmp    %rdx,%rsi
180064f9d:	49 0f 47 c8          	cmova  %r8,%rcx
180064fa1:	48 85 c9             	test   %rcx,%rcx
180064fa4:	74 0b                	je     0x180064fb1
180064fa6:	0f b7 44 24 48       	movzwl 0x48(%rsp),%eax
180064fab:	48 8b fe             	mov    %rsi,%rdi
180064fae:	66 f3 ab             	rep stos %ax,%es:(%rdi)
180064fb1:	48 8b 5c 24 58       	mov    0x58(%rsp),%rbx
180064fb6:	33 c0                	xor    %eax,%eax
180064fb8:	48 83 c4 20          	add    $0x20,%rsp
180064fbc:	5f                   	pop    %rdi
180064fbd:	5e                   	pop    %rsi
180064fbe:	5d                   	pop    %rbp
180064fbf:	c3                   	ret
180064fc0:	cc                   	int3
180064fc1:	cc                   	int3
180064fc2:	cc                   	int3
180064fc3:	cc                   	int3
180064fc4:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
180064fc9:	55                   	push   %rbp
180064fca:	56                   	push   %rsi
180064fcb:	57                   	push   %rdi
180064fcc:	41 54                	push   %r12
180064fce:	41 55                	push   %r13
180064fd0:	41 56                	push   %r14
180064fd2:	41 57                	push   %r15
180064fd4:	48 83 ec 20          	sub    $0x20,%rsp
180064fd8:	4c 8b f2             	mov    %rdx,%r14
180064fdb:	41 8b d8             	mov    %r8d,%ebx
180064fde:	4c 8b e9             	mov    %rcx,%r13
180064fe1:	48 8d 54 24 70       	lea    0x70(%rsp),%rdx
180064fe6:	48 8d 4c 24 60       	lea    0x60(%rsp),%rcx
180064feb:	e8 cc cb ff ff       	call   0x180061bbc
180064ff0:	44 8b 4c 24 70       	mov    0x70(%rsp),%r9d
180064ff5:	49 8d 04 5e          	lea    (%r14,%rbx,2),%rax
180064ff9:	44 8b 54 24 60       	mov    0x60(%rsp),%r10d
180064ffe:	33 d2                	xor    %edx,%edx
180065000:	41 8b 75 1c          	mov    0x1c(%r13),%esi
180065004:	45 8b 65 20          	mov    0x20(%r13),%r12d
180065008:	41 8b 4d 0c          	mov    0xc(%r13),%ecx
18006500c:	48 8b 3d bd fb 13 00 	mov    0x13fbbd(%rip),%rdi        # 0x1801a4bd0
180065013:	48 89 44 24 68       	mov    %rax,0x68(%rsp)
180065018:	41 8b 45 14          	mov    0x14(%r13),%eax
18006501c:	41 f7 f1             	div    %r9d
18006501f:	33 d2                	xor    %edx,%edx
180065021:	44 0f af e6          	imul   %esi,%r12d
180065025:	8b d8                	mov    %eax,%ebx
180065027:	41 8b 45 10          	mov    0x10(%r13),%eax
18006502b:	41 f7 f2             	div    %r10d
18006502e:	41 8b 55 08          	mov    0x8(%r13),%edx
180065032:	0f af de             	imul   %esi,%ebx
180065035:	03 d8                	add    %eax,%ebx
180065037:	e8 70 2f 00 00       	call   0x180067fac
18006503c:	44 8a f8             	mov    %al,%r15b
18006503f:	33 ed                	xor    %ebp,%ebp
180065041:	48 8b 44 24 68       	mov    0x68(%rsp),%rax
180065046:	4c 3b f0             	cmp    %rax,%r14
180065049:	0f 84 d5 00 00 00    	je     0x180065124
18006504f:	45 0f b7 06          	movzwl (%r14),%r8d
180065053:	41 8b d0             	mov    %r8d,%edx
180065056:	83 ea 08             	sub    $0x8,%edx
180065059:	74 5c                	je     0x1800650b7
18006505b:	83 ea 01             	sub    $0x1,%edx
18006505e:	74 36                	je     0x180065096
180065060:	83 ea 01             	sub    $0x1,%edx
180065063:	74 23                	je     0x180065088
180065065:	83 fa 03             	cmp    $0x3,%edx
180065068:	74 61                	je     0x1800650cb
18006506a:	b8 00 01 00 00       	mov    $0x100,%eax
18006506f:	66 44 3b c0          	cmp    %ax,%r8w
180065073:	73 05                	jae    0x18006507a
180065075:	41 8a 0e             	mov    (%r14),%cl
180065078:	eb 02                	jmp    0x18006507c
18006507a:	b1 3f                	mov    $0x3f,%cl
18006507c:	88 0c 5f             	mov    %cl,(%rdi,%rbx,2)
18006507f:	44 88 7c 5f 01       	mov    %r15b,0x1(%rdi,%rbx,2)
180065084:	ff c3                	inc    %ebx
180065086:	eb 3e                	jmp    0x1800650c6
180065088:	33 d2                	xor    %edx,%edx
18006508a:	8b c3                	mov    %ebx,%eax
18006508c:	f7 f6                	div    %esi
18006508e:	8b c6                	mov    %esi,%eax
180065090:	2b c2                	sub    %edx,%eax
180065092:	03 d8                	add    %eax,%ebx
180065094:	eb 30                	jmp    0x1800650c6
180065096:	b9 05 00 00 00       	mov    $0x5,%ecx
18006509b:	33 d2                	xor    %edx,%edx
18006509d:	8b c3                	mov    %ebx,%eax
18006509f:	f7 f6                	div    %esi
1800650a1:	85 d2                	test   %edx,%edx
1800650a3:	74 21                	je     0x1800650c6
1800650a5:	c6 04 5f 20          	movb   $0x20,(%rdi,%rbx,2)
1800650a9:	44 88 7c 5f 01       	mov    %r15b,0x1(%rdi,%rbx,2)
1800650ae:	ff c3                	inc    %ebx
1800650b0:	83 c1 ff             	add    $0xffffffff,%ecx
1800650b3:	75 e6                	jne    0x18006509b
1800650b5:	eb 0f                	jmp    0x1800650c6
1800650b7:	85 db                	test   %ebx,%ebx
1800650b9:	74 10                	je     0x1800650cb
1800650bb:	ff cb                	dec    %ebx
1800650bd:	c6 04 5f 20          	movb   $0x20,(%rdi,%rbx,2)
1800650c1:	44 88 7c 5f 01       	mov    %r15b,0x1(%rdi,%rbx,2)
1800650c6:	48 8b 44 24 68       	mov    0x68(%rsp),%rax
1800650cb:	41 3b dc             	cmp    %r12d,%ebx
1800650ce:	75 3d                	jne    0x18006510d
1800650d0:	44 3b e6             	cmp    %esi,%r12d
1800650d3:	0f 82 86 00 00 00    	jb     0x18006515f
1800650d9:	41 8b dc             	mov    %r12d,%ebx
1800650dc:	48 8d 14 77          	lea    (%rdi,%rsi,2),%rdx
1800650e0:	2b de                	sub    %esi,%ebx
1800650e2:	48 8b cf             	mov    %rdi,%rcx
1800650e5:	44 8b c3             	mov    %ebx,%r8d
1800650e8:	4d 03 c0             	add    %r8,%r8
1800650eb:	e8 d0 08 0d 00       	call   0x1801359c0
1800650f0:	8b d5                	mov    %ebp,%edx
1800650f2:	85 f6                	test   %esi,%esi
1800650f4:	74 12                	je     0x180065108
1800650f6:	8d 04 1a             	lea    (%rdx,%rbx,1),%eax
1800650f9:	ff c2                	inc    %edx
1800650fb:	c6 04 47 20          	movb   $0x20,(%rdi,%rax,2)
1800650ff:	44 88 7c 47 01       	mov    %r15b,0x1(%rdi,%rax,2)
180065104:	3b d6                	cmp    %esi,%edx
180065106:	72 ee                	jb     0x1800650f6
180065108:	48 8b 44 24 68       	mov    0x68(%rsp),%rax
18006510d:	49 83 c6 02          	add    $0x2,%r14
180065111:	4c 3b f0             	cmp    %rax,%r14
180065114:	0f 85 35 ff ff ff    	jne    0x18006504f
18006511a:	44 8b 4c 24 70       	mov    0x70(%rsp),%r9d
18006511f:	44 8b 54 24 60       	mov    0x60(%rsp),%r10d
180065124:	33 d2                	xor    %edx,%edx
180065126:	8b c3                	mov    %ebx,%eax
180065128:	f7 f6                	div    %esi
18006512a:	44 8b c0             	mov    %eax,%r8d
18006512d:	8b c8                	mov    %eax,%ecx
18006512f:	45 0f af c1          	imul   %r9d,%r8d
180065133:	45 89 45 14          	mov    %r8d,0x14(%r13)
180065137:	44 8b c2             	mov    %edx,%r8d
18006513a:	45 0f af c2          	imul   %r10d,%r8d
18006513e:	45 89 45 10          	mov    %r8d,0x10(%r13)
180065142:	e8 7d 30 00 00       	call   0x1800681c4
180065147:	48 8b 5c 24 78       	mov    0x78(%rsp),%rbx
18006514c:	8b c5                	mov    %ebp,%eax
18006514e:	48 83 c4 20          	add    $0x20,%rsp
180065152:	41 5f                	pop    %r15
180065154:	41 5e                	pop    %r14
180065156:	41 5d                	pop    %r13
180065158:	41 5c                	pop    %r12
18006515a:	5f                   	pop    %rdi
18006515b:	5e                   	pop    %rsi
18006515c:	5d                   	pop    %rbp
18006515d:	c3                   	ret
18006515e:	cc                   	int3
18006515f:	bd 95 00 00 c0       	mov    $0xc0000095,%ebp
180065164:	eb e1                	jmp    0x180065147
180065166:	cc                   	int3
180065167:	cc                   	int3
180065168:	40 53                	rex push %rbx
18006516a:	48 81 ec 30 01 00 00 	sub    $0x130,%rsp
180065171:	c7 41 08 0f 00 00 00 	movl   $0xf,0x8(%rcx)
180065178:	48 8d 05 e1 e9 0d 00 	lea    0xde9e1(%rip),%rax        # 0x180143b60
18006517f:	83 61 0c 00          	andl   $0x0,0xc(%rcx)
180065183:	48 8b d9             	mov    %rcx,%rbx
180065186:	83 61 10 00          	andl   $0x0,0x10(%rcx)
18006518a:	83 61 14 00          	andl   $0x0,0x14(%rcx)
18006518e:	83 61 18 00          	andl   $0x0,0x18(%rcx)
180065192:	80 3d 47 02 13 00 00 	cmpb   $0x0,0x130247(%rip)        # 0x1801953e0
180065199:	c6 41 28 00          	movb   $0x0,0x28(%rcx)
18006519d:	48 89 01             	mov    %rax,(%rcx)
1800651a0:	75 3a                	jne    0x1800651dc
1800651a2:	e8 cd 27 00 00       	call   0x180067974
1800651a7:	8b c8                	mov    %eax,%ecx
1800651a9:	85 c0                	test   %eax,%eax
1800651ab:	78 6a                	js     0x180065217
1800651ad:	8b 0d 31 fa 13 00    	mov    0x13fa31(%rip),%ecx        # 0x1801a4be4
1800651b3:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
1800651b8:	e8 73 12 fc ff       	call   0x180026430
1800651bd:	85 c0                	test   %eax,%eax
1800651bf:	78 1b                	js     0x1800651dc
1800651c1:	0f b7 44 24 44       	movzwl 0x44(%rsp),%eax
1800651c6:	89 43 4c             	mov    %eax,0x4c(%rbx)
1800651c9:	0f b7 44 24 42       	movzwl 0x42(%rsp),%eax
1800651ce:	89 43 48             	mov    %eax,0x48(%rbx)
1800651d1:	89 43 50             	mov    %eax,0x50(%rbx)
1800651d4:	0f b6 44 24 49       	movzbl 0x49(%rsp),%eax
1800651d9:	89 43 54             	mov    %eax,0x54(%rbx)
1800651dc:	8b 0d 22 76 10 00    	mov    0x107622(%rip),%ecx        # 0x18016c804
1800651e2:	48 8d 43 58          	lea    0x58(%rbx),%rax
1800651e6:	44 8b 05 03 fa 13 00 	mov    0x13fa03(%rip),%r8d        # 0x1801a4bf0
1800651ed:	4c 8d 0d ec 75 10 00 	lea    0x1075ec(%rip),%r9        # 0x18016c7e0
1800651f4:	48 8b 15 ed f9 13 00 	mov    0x13f9ed(%rip),%rdx        # 0x1801a4be8
1800651fb:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
180065200:	89 4c 24 20          	mov    %ecx,0x20(%rsp)
180065204:	e8 47 2b 00 00       	call   0x180067d50
180065209:	33 c9                	xor    %ecx,%ecx
18006520b:	ba 01 00 00 c0       	mov    $0xc0000001,%edx
180065210:	85 c0                	test   %eax,%eax
180065212:	0f 48 ca             	cmovs  %edx,%ecx
180065215:	8b c1                	mov    %ecx,%eax
180065217:	85 c9                	test   %ecx,%ecx
180065219:	78 22                	js     0x18006523d
18006521b:	8b 4b 58             	mov    0x58(%rbx),%ecx
18006521e:	4c 8d 43 3c          	lea    0x3c(%rbx),%r8
180065222:	48 8d 53 30          	lea    0x30(%rbx),%rdx
180065226:	e8 39 29 00 00       	call   0x180067b64
18006522b:	85 c0                	test   %eax,%eax
18006522d:	78 0e                	js     0x18006523d
18006522f:	8b 43 08             	mov    0x8(%rbx),%eax
180065232:	89 43 40             	mov    %eax,0x40(%rbx)
180065235:	8b 43 0c             	mov    0xc(%rbx),%eax
180065238:	89 43 44             	mov    %eax,0x44(%rbx)
18006523b:	33 c0                	xor    %eax,%eax
18006523d:	48 81 c4 30 01 00 00 	add    $0x130,%rsp
180065244:	5b                   	pop    %rbx
180065245:	c3                   	ret
180065246:	cc                   	int3
180065247:	cc                   	int3
180065248:	40 53                	rex push %rbx
18006524a:	48 83 ec 20          	sub    $0x20,%rsp
18006524e:	80 79 28 00          	cmpb   $0x0,0x28(%rcx)
180065252:	75 32                	jne    0x180065286
180065254:	8b 1d 86 f9 13 00    	mov    0x13f986(%rip),%ebx        # 0x1801a4be0
18006525a:	48 8d 0d 7f f9 13 00 	lea    0x13f97f(%rip),%rcx        # 0x1801a4be0
180065261:	e8 ba 10 fc ff       	call   0x180026320
180065266:	85 c0                	test   %eax,%eax
180065268:	79 0b                	jns    0x180065275
18006526a:	e8 e9 0f fc ff       	call   0x180026258
18006526f:	89 05 6b f9 13 00    	mov    %eax,0x13f96b(%rip)        # 0x1801a4be0
180065275:	45 33 c0             	xor    %r8d,%r8d
180065278:	33 d2                	xor    %edx,%edx
18006527a:	8b cb                	mov    %ebx,%ecx
18006527c:	48 83 c4 20          	add    $0x20,%rsp
180065280:	5b                   	pop    %rbx
180065281:	e9 de 28 00 00       	jmp    0x180067b64
180065286:	48 83 c4 20          	add    $0x20,%rsp
18006528a:	5b                   	pop    %rbx
18006528b:	e9 c0 fb ff ff       	jmp    0x180064e50
180065290:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
180065295:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
18006529a:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
18006529f:	57                   	push   %rdi
1800652a0:	41 56                	push   %r14
1800652a2:	41 57                	push   %r15
1800652a4:	48 83 ec 20          	sub    $0x20,%rsp
1800652a8:	80 79 28 00          	cmpb   $0x0,0x28(%rcx)
1800652ac:	49 8b f8             	mov    %r8,%rdi
1800652af:	8b f2                	mov    %edx,%esi
1800652b1:	48 8b d9             	mov    %rcx,%rbx
1800652b4:	0f 85 e0 00 00 00    	jne    0x18006539a
1800652ba:	40 f6 c6 01          	test   $0x1,%sil
1800652be:	74 06                	je     0x1800652c6
1800652c0:	41 8b 00             	mov    (%r8),%eax
1800652c3:	89 41 08             	mov    %eax,0x8(%rcx)
1800652c6:	40 f6 c6 02          	test   $0x2,%sil