18004bf3c:	48 8b 42 28          	mov    0x28(%rdx),%rax
18004bf40:	48 0f c8             	bswap  %rax
18004bf43:	48 89 42 28          	mov    %rax,0x28(%rdx)
18004bf47:	48 8b 42 30          	mov    0x30(%rdx),%rax
18004bf4b:	48 0f c8             	bswap  %rax
18004bf4e:	48 89 42 30          	mov    %rax,0x30(%rdx)
18004bf52:	c3                   	ret
18004bf53:	cc                   	int3
18004bf54:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18004bf59:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
18004bf5e:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
18004bf63:	57                   	push   %rdi
18004bf64:	48 83 ec 20          	sub    $0x20,%rsp
18004bf68:	48 8b d9             	mov    %rcx,%rbx
18004bf6b:	49 8b f8             	mov    %r8,%rdi
18004bf6e:	8b 49 60             	mov    0x60(%rcx),%ecx
18004bf71:	8b ea                	mov    %edx,%ebp
18004bf73:	e8 d8 de 04 00       	call   0x180099e50
18004bf78:	48 8b f0             	mov    %rax,%rsi
18004bf7b:	48 85 c0             	test   %rax,%rax
18004bf7e:	75 07                	jne    0x18004bf87
18004bf80:	bb 17 00 00 c0       	mov    $0xc0000017,%ebx
18004bf85:	eb 2d                	jmp    0x18004bfb4
18004bf87:	8b 43 5c             	mov    0x5c(%rbx),%eax
18004bf8a:	4c 8b cf             	mov    %rdi,%r9
18004bf8d:	44 8b c5             	mov    %ebp,%r8d
18004bf90:	89 07                	mov    %eax,(%rdi)
18004bf92:	33 d2                	xor    %edx,%edx
18004bf94:	48 89 77 08          	mov    %rsi,0x8(%rdi)
18004bf98:	48 8b cb             	mov    %rbx,%rcx
18004bf9b:	e8 d4 01 00 00       	call   0x18004c174
18004bfa0:	8b d8                	mov    %eax,%ebx
18004bfa2:	85 c0                	test   %eax,%eax
18004bfa4:	79 0e                	jns    0x18004bfb4
18004bfa6:	48 8b ce             	mov    %rsi,%rcx
18004bfa9:	e8 4e e0 04 00       	call   0x180099ffc
18004bfae:	0f 57 c0             	xorps  %xmm0,%xmm0
18004bfb1:	0f 11 07             	movups %xmm0,(%rdi)
18004bfb4:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
18004bfb9:	8b c3                	mov    %ebx,%eax
18004bfbb:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
18004bfc0:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
18004bfc5:	48 83 c4 20          	add    $0x20,%rsp
18004bfc9:	5f                   	pop    %rdi
18004bfca:	c3                   	ret
18004bfcb:	cc                   	int3
18004bfcc:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18004bfd1:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
18004bfd6:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
18004bfdb:	57                   	push   %rdi
18004bfdc:	41 56                	push   %r14
18004bfde:	41 57                	push   %r15
18004bfe0:	48 83 ec 20          	sub    $0x20,%rsp
18004bfe4:	4d 8b f9             	mov    %r9,%r15
18004bfe7:	8b ea                	mov    %edx,%ebp
18004bfe9:	4c 8b f1             	mov    %rcx,%r14
18004bfec:	4d 85 c0             	test   %r8,%r8
18004bfef:	75 12                	jne    0x18004c003
18004bff1:	8d 42 fd             	lea    -0x3(%rdx),%eax
18004bff4:	83 f8 01             	cmp    $0x1,%eax
18004bff7:	77 0a                	ja     0x18004c003
18004bff9:	bb 0d 00 00 c0       	mov    $0xc000000d,%ebx
18004bffe:	e9 a0 00 00 00       	jmp    0x18004c0a3
18004c003:	48 8b 59 10          	mov    0x10(%rcx),%rbx
18004c007:	8b cd                	mov    %ebp,%ecx
18004c009:	83 e9 01             	sub    $0x1,%ecx
18004c00c:	74 42                	je     0x18004c050
18004c00e:	83 e9 01             	sub    $0x1,%ecx
18004c011:	74 39                	je     0x18004c04c
18004c013:	83 e9 01             	sub    $0x1,%ecx
18004c016:	74 29                	je     0x18004c041
18004c018:	83 f9 01             	cmp    $0x1,%ecx
18004c01b:	74 07                	je     0x18004c024
18004c01d:	bb bb 00 00 c0       	mov    $0xc00000bb,%ebx
18004c022:	eb 7f                	jmp    0x18004c0a3
18004c024:	41 8b 78 1c          	mov    0x1c(%r8),%edi
18004c028:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
18004c02d:	49 8b 58 10          	mov    0x10(%r8),%rbx
18004c031:	48 c1 e7 02          	shl    $0x2,%rdi
18004c035:	48 3b f8             	cmp    %rax,%rdi
18004c038:	76 22                	jbe    0x18004c05c
18004c03a:	bb 95 00 00 c0       	mov    $0xc0000095,%ebx
18004c03f:	eb 62                	jmp    0x18004c0a3
18004c041:	49 8b 58 10          	mov    0x10(%r8),%rbx
18004c045:	bf 00 04 00 00       	mov    $0x400,%edi
18004c04a:	eb 10                	jmp    0x18004c05c
18004c04c:	33 db                	xor    %ebx,%ebx
18004c04e:	eb 07                	jmp    0x18004c057
18004c050:	48 81 c3 00 fe ff ff 	add    $0xfffffffffffffe00,%rbx
18004c057:	bf 00 02 00 00       	mov    $0x200,%edi
18004c05c:	8b cf                	mov    %edi,%ecx
18004c05e:	e8 ed dd 04 00       	call   0x180099e50
18004c063:	48 8b f0             	mov    %rax,%rsi
18004c066:	48 85 c0             	test   %rax,%rax
18004c069:	75 07                	jne    0x18004c072
18004c06b:	bb 17 00 00 c0       	mov    $0xc0000017,%ebx
18004c070:	eb 31                	jmp    0x18004c0a3
18004c072:	44 8b cf             	mov    %edi,%r9d
18004c075:	4c 8b c6             	mov    %rsi,%r8
18004c078:	48 8b d3             	mov    %rbx,%rdx
18004c07b:	49 8b ce             	mov    %r14,%rcx
18004c07e:	e8 3d 00 00 00       	call   0x18004c0c0
18004c083:	8b d8                	mov    %eax,%ebx
18004c085:	85 c0                	test   %eax,%eax
18004c087:	78 12                	js     0x18004c09b
18004c089:	44 8b c7             	mov    %edi,%r8d
18004c08c:	48 8b d6             	mov    %rsi,%rdx
18004c08f:	8b cd                	mov    %ebp,%ecx
18004c091:	e8 d6 fd ff ff       	call   0x18004be6c
18004c096:	49 89 37             	mov    %rsi,(%r15)
18004c099:	eb 08                	jmp    0x18004c0a3
18004c09b:	48 8b ce             	mov    %rsi,%rcx
18004c09e:	e8 59 df 04 00       	call   0x180099ffc
18004c0a3:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
18004c0a8:	8b c3                	mov    %ebx,%eax
18004c0aa:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
18004c0af:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
18004c0b4:	48 83 c4 20          	add    $0x20,%rsp
18004c0b8:	41 5f                	pop    %r15
18004c0ba:	41 5e                	pop    %r14
18004c0bc:	5f                   	pop    %rdi
18004c0bd:	c3                   	ret
18004c0be:	cc                   	int3
18004c0bf:	cc                   	int3
18004c0c0:	40 53                	rex push %rbx
18004c0c2:	48 83 ec 30          	sub    $0x30,%rsp
18004c0c6:	83 64 24 58 00       	andl   $0x0,0x58(%rsp)
18004c0cb:	41 8b d9             	mov    %r9d,%ebx
18004c0ce:	45 8b c9             	mov    %r9d,%r9d
18004c0d1:	4c 03 ca             	add    %rdx,%r9
18004c0d4:	4c 3b ca             	cmp    %rdx,%r9
18004c0d7:	72 36                	jb     0x18004c10f
18004c0d9:	4c 39 49 10          	cmp    %r9,0x10(%rcx)
18004c0dd:	72 30                	jb     0x18004c10f
18004c0df:	83 64 24 28 00       	andl   $0x0,0x28(%rsp)
18004c0e4:	48 8d 44 24 58       	lea    0x58(%rsp),%rax
18004c0e9:	8b 49 0c             	mov    0xc(%rcx),%ecx
18004c0ec:	4d 8b c8             	mov    %r8,%r9
18004c0ef:	4c 8b c2             	mov    %rdx,%r8
18004c0f2:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
18004c0f7:	8b d3                	mov    %ebx,%edx
18004c0f9:	e8 52 ce 01 00       	call   0x180068f50
18004c0fe:	85 c0                	test   %eax,%eax
18004c100:	78 12                	js     0x18004c114
18004c102:	39 5c 24 58          	cmp    %ebx,0x58(%rsp)
18004c106:	74 0c                	je     0x18004c114
18004c108:	b8 01 00 00 c0       	mov    $0xc0000001,%eax
18004c10d:	eb 05                	jmp    0x18004c114
18004c10f:	b8 0d 00 00 c0       	mov    $0xc000000d,%eax
18004c114:	48 83 c4 30          	add    $0x30,%rsp
18004c118:	5b                   	pop    %rbx
18004c119:	c3                   	ret
18004c11a:	cc                   	int3
18004c11b:	cc                   	int3
18004c11c:	48 83 ec 38          	sub    $0x38,%rsp
18004c120:	8b 44 24 68          	mov    0x68(%rsp),%eax
18004c124:	84 d2                	test   %dl,%dl
18004c126:	75 12                	jne    0x18004c13a
18004c128:	a9 fd ff ff ff       	test   $0xfffffffd,%eax
18004c12d:	74 0b                	je     0x18004c13a
18004c12f:	b8 0d 00 00 c0       	mov    $0xc000000d,%eax
18004c134:	48 83 c4 38          	add    $0x38,%rsp
18004c138:	c3                   	ret
18004c139:	cc                   	int3
18004c13a:	8b 49 50             	mov    0x50(%rcx),%ecx
18004c13d:	84 d2                	test   %dl,%dl
18004c13f:	8b 54 24 60          	mov    0x60(%rsp),%edx
18004c143:	74 13                	je     0x18004c158
18004c145:	48 8b 44 24 70       	mov    0x70(%rsp),%rax
18004c14a:	48 89 44 24 60       	mov    %rax,0x60(%rsp)
18004c14f:	48 83 c4 38          	add    $0x38,%rsp
18004c153:	e9 c0 ce 01 00       	jmp    0x180069018
18004c158:	89 44 24 28          	mov    %eax,0x28(%rsp)
18004c15c:	48 8b 44 24 70       	mov    0x70(%rsp),%rax
18004c161:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
18004c166:	e8 e5 cd 01 00       	call   0x180068f50
18004c16b:	48 83 c4 38          	add    $0x38,%rsp
18004c16f:	c3                   	ret
18004c170:	cc                   	int3
18004c171:	cc                   	int3
18004c172:	cc                   	int3
18004c173:	cc                   	int3
18004c174:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18004c179:	57                   	push   %rdi
18004c17a:	48 83 ec 40          	sub    $0x40,%rsp
18004c17e:	83 64 24 68 00       	andl   $0x0,0x68(%rsp)
18004c183:	40 8a fa             	mov    %dl,%dil
18004c186:	4d 8b 49 08          	mov    0x8(%r9),%r9
18004c18a:	48 8b d9             	mov    %rcx,%rbx
18004c18d:	4d 85 c9             	test   %r9,%r9
18004c190:	75 07                	jne    0x18004c199
18004c192:	b8 0d 00 00 c0       	mov    $0xc000000d,%eax
18004c197:	eb 63                	jmp    0x18004c1fc
18004c199:	44 3b 41 58          	cmp    0x58(%rcx),%r8d
18004c19d:	73 f3                	jae    0x18004c192
18004c19f:	48 8b 43 48          	mov    0x48(%rbx),%rax
18004c1a3:	41 8b c8             	mov    %r8d,%ecx
18004c1a6:	8b 14 88             	mov    (%rax,%rcx,4),%edx
18004c1a9:	83 fa ff             	cmp    $0xffffffff,%edx
18004c1ac:	74 e4                	je     0x18004c192
18004c1ae:	44 8b 83 80 00 00 00 	mov    0x80(%rbx),%r8d
18004c1b5:	40 8a c7             	mov    %dil,%al
18004c1b8:	4c 0f af c2          	imul   %rdx,%r8
18004c1bc:	f6 d8                	neg    %al
18004c1be:	40 8a d7             	mov    %dil,%dl
18004c1c1:	48 8d 44 24 68       	lea    0x68(%rsp),%rax
18004c1c6:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
18004c1cb:	1b c9                	sbb    %ecx,%ecx
18004c1cd:	8b 43 60             	mov    0x60(%rbx),%eax
18004c1d0:	83 e1 02             	and    $0x2,%ecx
18004c1d3:	89 4c 24 28          	mov    %ecx,0x28(%rsp)
18004c1d7:	48 8b cb             	mov    %rbx,%rcx
18004c1da:	89 44 24 20          	mov    %eax,0x20(%rsp)
18004c1de:	e8 39 ff ff ff       	call   0x18004c11c
18004c1e3:	85 c0                	test   %eax,%eax
18004c1e5:	78 09                	js     0x18004c1f0
18004c1e7:	8b 4b 60             	mov    0x60(%rbx),%ecx
18004c1ea:	39 4c 24 68          	cmp    %ecx,0x68(%rsp)
18004c1ee:	73 0c                	jae    0x18004c1fc
18004c1f0:	40 f6 df             	neg    %dil
18004c1f3:	1b c0                	sbb    %eax,%eax
18004c1f5:	f7 d8                	neg    %eax
18004c1f7:	05 10 00 3a c0       	add    $0xc03a0010,%eax
18004c1fc:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
18004c201:	48 83 c4 40          	add    $0x40,%rsp
18004c205:	5f                   	pop    %rdi
18004c206:	c3                   	ret
18004c207:	cc                   	int3
18004c208:	48 8b c4             	mov    %rsp,%rax
18004c20b:	48 89 58 08          	mov    %rbx,0x8(%rax)
18004c20f:	48 89 68 10          	mov    %rbp,0x10(%rax)
18004c213:	48 89 70 18          	mov    %rsi,0x18(%rax)
18004c217:	57                   	push   %rdi
18004c218:	41 56                	push   %r14
18004c21a:	41 57                	push   %r15
18004c21c:	48 83 ec 30          	sub    $0x30,%rsp
18004c220:	0f 57 c0             	xorps  %xmm0,%xmm0
18004c223:	41 8b f8             	mov    %r8d,%edi
18004c226:	48 8b f2             	mov    %rdx,%rsi
18004c229:	4c 8b f1             	mov    %rcx,%r14
18004c22c:	0f 11 40 d8          	movups %xmm0,-0x28(%rax)
18004c230:	44 3b 41 54          	cmp    0x54(%rcx),%r8d
18004c234:	76 0a                	jbe    0x18004c240
18004c236:	bb 0d 00 00 c0       	mov    $0xc000000d,%ebx
18004c23b:	e9 ea 00 00 00       	jmp    0x18004c32a
18004c240:	8b 49 54             	mov    0x54(%rcx),%ecx
18004c243:	4c 8d 44 24 20       	lea    0x20(%rsp),%r8
18004c248:	48 8b c6             	mov    %rsi,%rax
18004c24b:	48 99                	cqto
18004c24d:	48 f7 f9             	idiv   %rcx
18004c250:	49 8b ce             	mov    %r14,%rcx
18004c253:	8b d0                	mov    %eax,%edx
18004c255:	4c 8b f8             	mov    %rax,%r15
18004c258:	e8 f7 fc ff ff       	call   0x18004bf54
18004c25d:	8b d8                	mov    %eax,%ebx
18004c25f:	85 c0                	test   %eax,%eax
18004c261:	0f 88 c3 00 00 00    	js     0x18004c32a
18004c267:	41 8b 4e 54          	mov    0x54(%r14),%ecx
18004c26b:	44 8d 4f ff          	lea    -0x1(%rdi),%r9d
18004c26f:	45 8b 86 80 00 00 00 	mov    0x80(%r14),%r8d
18004c276:	48 8b c6             	mov    %rsi,%rax
18004c279:	48 99                	cqto
18004c27b:	45 03 c8             	add    %r8d,%r9d
18004c27e:	48 f7 f9             	idiv   %rcx
18004c281:	48 8b c2             	mov    %rdx,%rax
18004c284:	33 d2                	xor    %edx,%edx
18004c286:	41 f7 f0             	div    %r8d
18004c289:	8b c8                	mov    %eax,%ecx
18004c28b:	41 8b c0             	mov    %r8d,%eax
18004c28e:	f7 d8                	neg    %eax
18004c290:	44 23 c8             	and    %eax,%r9d
18004c293:	44 3b cf             	cmp    %edi,%r9d
18004c296:	73 0a                	jae    0x18004c2a2
18004c298:	bb 95 00 00 c0       	mov    $0xc0000095,%ebx
18004c29d:	e9 88 00 00 00       	jmp    0x18004c32a
18004c2a2:	33 d2                	xor    %edx,%edx
18004c2a4:	48 8d 2d 55 3d fb ff 	lea    -0x4c2ab(%rip),%rbp        # 0x180000000
18004c2ab:	41 8b c1             	mov    %r9d,%eax
18004c2ae:	48 8b f9             	mov    %rcx,%rdi
18004c2b1:	41 f7 f0             	div    %r8d
18004c2b4:	83 e1 07             	and    $0x7,%ecx
18004c2b7:	48 c1 ef 03          	shr    $0x3,%rdi
18004c2bb:	48 03 7c 24 28       	add    0x28(%rsp),%rdi
18004c2c0:	8b f0                	mov    %eax,%esi
18004c2c2:	8d 14 01             	lea    (%rcx,%rax,1),%edx
18004c2c5:	83 fa 08             	cmp    $0x8,%edx
18004c2c8:	77 0b                	ja     0x18004c2d5
18004c2ca:	8a 84 28 90 ee 14 00 	mov    0x14ee90(%rax,%rbp,1),%al
18004c2d1:	d2 e8                	shr    %cl,%al
18004c2d3:	eb 3f                	jmp    0x18004c314
18004c2d5:	85 c9                	test   %ecx,%ecx
18004c2d7:	74 0f                	je     0x18004c2e8
18004c2d9:	8a 84 29 a0 ef 14 00 	mov    0x14efa0(%rcx,%rbp,1),%al
18004c2e0:	8d 72 f8             	lea    -0x8(%rdx),%esi
18004c2e3:	08 07                	or     %al,(%rdi)
18004c2e5:	48 ff c7             	inc    %rdi
18004c2e8:	83 fe 08             	cmp    $0x8,%esi
18004c2eb:	76 1c                	jbe    0x18004c309
18004c2ed:	8b de                	mov    %esi,%ebx
18004c2ef:	ba ff 00 00 00       	mov    $0xff,%edx
18004c2f4:	48 c1 eb 03          	shr    $0x3,%rbx
18004c2f8:	48 8b cf             	mov    %rdi,%rcx
18004c2fb:	4c 8b c3             	mov    %rbx,%r8
18004c2fe:	e8 7d 99 0e 00       	call   0x180135c80
18004c303:	48 03 fb             	add    %rbx,%rdi
18004c306:	83 e6 07             	and    $0x7,%esi
18004c309:	85 f6                	test   %esi,%esi
18004c30b:	74 09                	je     0x18004c316
18004c30d:	8a 84 2e 90 ee 14 00 	mov    0x14ee90(%rsi,%rbp,1),%al
18004c314:	08 07                	or     %al,(%rdi)
18004c316:	4c 8d 4c 24 20       	lea    0x20(%rsp),%r9
18004c31b:	45 8b c7             	mov    %r15d,%r8d
18004c31e:	b2 01                	mov    $0x1,%dl
18004c320:	49 8b ce             	mov    %r14,%rcx
18004c323:	e8 4c fe ff ff       	call   0x18004c174
18004c328:	8b d8                	mov    %eax,%ebx
18004c32a:	48 8b 4c 24 28       	mov    0x28(%rsp),%rcx
18004c32f:	48 85 c9             	test   %rcx,%rcx
18004c332:	74 05                	je     0x18004c339
18004c334:	e8 c3 dc 04 00       	call   0x180099ffc
18004c339:	48 8b 6c 24 58       	mov    0x58(%rsp),%rbp
18004c33e:	8b c3                	mov    %ebx,%eax
18004c340:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
18004c345:	48 8b 74 24 60       	mov    0x60(%rsp),%rsi
18004c34a:	48 83 c4 30          	add    $0x30,%rsp
18004c34e:	41 5f                	pop    %r15
18004c350:	41 5e                	pop    %r14
18004c352:	5f                   	pop    %rdi
18004c353:	c3                   	ret
18004c354:	cc                   	int3
18004c355:	cc                   	int3
18004c356:	cc                   	int3
18004c357:	cc                   	int3
18004c358:	48 8b c4             	mov    %rsp,%rax
18004c35b:	48 89 58 08          	mov    %rbx,0x8(%rax)
18004c35f:	4c 89 48 20          	mov    %r9,0x20(%rax)
18004c363:	44 89 40 18          	mov    %r8d,0x18(%rax)
18004c367:	89 50 10             	mov    %edx,0x10(%rax)
18004c36a:	55                   	push   %rbp
18004c36b:	56                   	push   %rsi
18004c36c:	57                   	push   %rdi
18004c36d:	41 54                	push   %r12
18004c36f:	41 55                	push   %r13
18004c371:	41 56                	push   %r14
18004c373:	41 57                	push   %r15
18004c375:	48 8d 68 b8          	lea    -0x48(%rax),%rbp
18004c379:	48 81 ec 10 01 00 00 	sub    $0x110,%rsp
18004c380:	4c 8b e1             	mov    %rcx,%r12
18004c383:	c7 45 90 1a 00 1c 00 	movl   $0x1c001a,-0x70(%rbp)
18004c38a:	48 8d 05 27 28 10 00 	lea    0x102827(%rip),%rax        # 0x18014ebb8