18004af74:	48 85 c9             	test   %rcx,%rcx
18004af77:	74 6e                	je     0x18004afe7
18004af79:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18004af7e:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
18004af83:	57                   	push   %rdi
18004af84:	48 83 ec 20          	sub    $0x20,%rsp
18004af88:	48 8b d9             	mov    %rcx,%rbx
18004af8b:	48 8b f1             	mov    %rcx,%rsi
18004af8e:	48 8b 4b 48          	mov    0x48(%rbx),%rcx
18004af92:	48 8b 3b             	mov    (%rbx),%rdi
18004af95:	48 85 c9             	test   %rcx,%rcx
18004af98:	74 05                	je     0x18004af9f
18004af9a:	e8 5d f0 04 00       	call   0x180099ffc
18004af9f:	48 8b 4b 78          	mov    0x78(%rbx),%rcx
18004afa3:	48 85 c9             	test   %rcx,%rcx
18004afa6:	74 05                	je     0x18004afad
18004afa8:	e8 4f f0 04 00       	call   0x180099ffc
18004afad:	8b 4b 50             	mov    0x50(%rbx),%ecx
18004afb0:	83 f9 ff             	cmp    $0xffffffff,%ecx
18004afb3:	74 0e                	je     0x18004afc3
18004afb5:	80 bb 84 00 00 00 00 	cmpb   $0x0,0x84(%rbx)
18004afbc:	75 05                	jne    0x18004afc3
18004afbe:	e8 3d d5 01 00       	call   0x180068500
18004afc3:	48 3b de             	cmp    %rsi,%rbx
18004afc6:	74 08                	je     0x18004afd0
18004afc8:	48 8b cb             	mov    %rbx,%rcx
18004afcb:	e8 2c f0 04 00       	call   0x180099ffc
18004afd0:	48 8b df             	mov    %rdi,%rbx
18004afd3:	48 85 ff             	test   %rdi,%rdi
18004afd6:	75 b6                	jne    0x18004af8e
18004afd8:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
18004afdd:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
18004afe2:	48 83 c4 20          	add    $0x20,%rsp
18004afe6:	5f                   	pop    %rdi
18004afe7:	c3                   	ret
18004afe8:	cc                   	int3
18004afe9:	cc                   	int3
18004afea:	cc                   	int3
18004afeb:	cc                   	int3
18004afec:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18004aff1:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
18004aff6:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
18004affb:	55                   	push   %rbp
18004affc:	57                   	push   %rdi
18004affd:	41 54                	push   %r12
18004afff:	41 56                	push   %r14
18004b001:	41 57                	push   %r15
18004b003:	48 8b ec             	mov    %rsp,%rbp
18004b006:	48 83 ec 70          	sub    $0x70,%rsp
18004b00a:	33 d2                	xor    %edx,%edx
18004b00c:	0f 57 c0             	xorps  %xmm0,%xmm0
18004b00f:	32 c0                	xor    %al,%al
18004b011:	4d 8b f1             	mov    %r9,%r14
18004b014:	4c 8b f9             	mov    %rcx,%r15
18004b017:	49 81 c0 48 02 00 00 	add    $0x248,%r8
18004b01e:	0f 11 45 c0          	movups %xmm0,-0x40(%rbp)
18004b022:	44 8d 62 01          	lea    0x1(%rdx),%r12d
18004b026:	41 81 78 f8 75 72 32 	cmpl   $0x57327275,-0x8(%r8)
18004b02d:	57
18004b02e:	49 8b d8             	mov    %r8,%rbx
18004b031:	75 28                	jne    0x18004b05b
18004b033:	41 8b 48 fc          	mov    -0x4(%r8),%ecx
18004b037:	32 c0                	xor    %al,%al
18004b039:	85 c9                	test   %ecx,%ecx
18004b03b:	74 1a                	je     0x18004b057
18004b03d:	41 83 38 00          	cmpl   $0x0,(%r8)
18004b041:	76 14                	jbe    0x18004b057
18004b043:	49 83 78 08 00       	cmpq   $0x0,0x8(%r8)
18004b048:	76 0d                	jbe    0x18004b057
18004b04a:	c1 e1 09             	shl    $0x9,%ecx
18004b04d:	41 39 08             	cmp    %ecx,(%r8)
18004b050:	0f b6 c0             	movzbl %al,%eax
18004b053:	41 0f 42 c4          	cmovb  %r12d,%eax
18004b057:	84 c0                	test   %al,%al
18004b059:	75 1a                	jne    0x18004b075
18004b05b:	41 03 d4             	add    %r12d,%edx
18004b05e:	49 83 c0 18          	add    $0x18,%r8
18004b062:	83 fa 08             	cmp    $0x8,%edx
18004b065:	72 bf                	jb     0x18004b026
18004b067:	84 c0                	test   %al,%al
18004b069:	75 0a                	jne    0x18004b075
18004b06b:	bb 0d 00 3a c0       	mov    $0xc03a000d,%ebx
18004b070:	e9 ef 00 00 00       	jmp    0x18004b164
18004b075:	81 3b ff ff 00 00    	cmpl   $0xffff,(%rbx)
18004b07b:	76 0a                	jbe    0x18004b087
18004b07d:	bb 02 01 00 c0       	mov    $0xc0000102,%ebx
18004b082:	e9 dd 00 00 00       	jmp    0x18004b164
18004b087:	0f b7 3b             	movzwl (%rbx),%edi
18004b08a:	8b cf                	mov    %edi,%ecx
18004b08c:	e8 bf ed 04 00       	call   0x180099e50
18004b091:	48 8b f0             	mov    %rax,%rsi
18004b094:	48 85 c0             	test   %rax,%rax
18004b097:	75 0a                	jne    0x18004b0a3
18004b099:	bb 17 00 00 c0       	mov    $0xc0000017,%ebx
18004b09e:	e9 c1 00 00 00       	jmp    0x18004b164
18004b0a3:	48 8b 53 08          	mov    0x8(%rbx),%rdx
18004b0a7:	44 8b cf             	mov    %edi,%r9d
18004b0aa:	83 65 b4 00          	andl   $0x0,-0x4c(%rbp)
18004b0ae:	4c 8b c6             	mov    %rsi,%r8
18004b0b1:	49 8b cf             	mov    %r15,%rcx
18004b0b4:	66 89 7d b2          	mov    %di,-0x4e(%rbp)
18004b0b8:	48 89 75 b8          	mov    %rsi,-0x48(%rbp)
18004b0bc:	e8 ff 0f 00 00       	call   0x18004c0c0
18004b0c1:	8b d8                	mov    %eax,%ebx
18004b0c3:	85 c0                	test   %eax,%eax
18004b0c5:	0f 88 8d 00 00 00    	js     0x18004b158
18004b0cb:	49 8b 17             	mov    (%r15),%rdx
18004b0ce:	48 8d 4d d0          	lea    -0x30(%rbp),%rcx
18004b0d2:	66 89 7d b0          	mov    %di,-0x50(%rbp)
18004b0d6:	e8 e9 25 03 00       	call   0x18007d6c4
18004b0db:	4c 8d 45 c0          	lea    -0x40(%rbp),%r8
18004b0df:	48 8d 55 b0          	lea    -0x50(%rbp),%rdx
18004b0e3:	48 8d 4d d0          	lea    -0x30(%rbp),%rcx
18004b0e7:	e8 48 1d ff ff       	call   0x18003ce34
18004b0ec:	8b d8                	mov    %eax,%ebx
18004b0ee:	85 c0                	test   %eax,%eax
18004b0f0:	78 66                	js     0x18004b158
18004b0f2:	45 8b 7f 08          	mov    0x8(%r15),%r15d
18004b0f6:	4c 8d 4d 38          	lea    0x38(%rbp),%r9
18004b0fa:	45 8b c4             	mov    %r12d,%r8d
18004b0fd:	41 8b cf             	mov    %r15d,%ecx
18004b100:	4c 8b 65 c8          	mov    -0x38(%rbp),%r12
18004b104:	49 8b d4             	mov    %r12,%rdx
18004b107:	e8 10 d3 01 00       	call   0x18006841c
18004b10c:	85 c0                	test   %eax,%eax
18004b10e:	78 39                	js     0x18004b149
18004b110:	8b 7d 38             	mov    0x38(%rbp),%edi
18004b113:	48 8d 55 e0          	lea    -0x20(%rbp),%rdx
18004b117:	8b cf                	mov    %edi,%ecx
18004b119:	e8 fa db 01 00       	call   0x180068d18
18004b11e:	8b d8                	mov    %eax,%ebx
18004b120:	85 c0                	test   %eax,%eax
18004b122:	78 17                	js     0x18004b13b
18004b124:	48 8b 45 e0          	mov    -0x20(%rbp),%rax
18004b128:	33 db                	xor    %ebx,%ebx
18004b12a:	49 89 46 10          	mov    %rax,0x10(%r14)
18004b12e:	4d 89 26             	mov    %r12,(%r14)
18004b131:	45 89 7e 08          	mov    %r15d,0x8(%r14)
18004b135:	41 89 7e 0c          	mov    %edi,0xc(%r14)
18004b139:	eb 1d                	jmp    0x18004b158
18004b13b:	83 ff ff             	cmp    $0xffffffff,%edi
18004b13e:	74 18                	je     0x18004b158
18004b140:	8b cf                	mov    %edi,%ecx
18004b142:	e8 b9 d3 01 00       	call   0x180068500
18004b147:	eb 0f                	jmp    0x18004b158
18004b149:	bb 0d 00 3a c0       	mov    $0xc03a000d,%ebx
18004b14e:	3d 0f 00 00 c0       	cmp    $0xc000000f,%eax
18004b153:	0f 44 c3             	cmove  %ebx,%eax
18004b156:	8b d8                	mov    %eax,%ebx
18004b158:	48 8b ce             	mov    %rsi,%rcx
18004b15b:	e8 9c ee 04 00       	call   0x180099ffc
18004b160:	85 db                	test   %ebx,%ebx
18004b162:	79 09                	jns    0x18004b16d
18004b164:	48 8d 4d c0          	lea    -0x40(%rbp),%rcx
18004b168:	e8 b7 2c 03 00       	call   0x18007de24
18004b16d:	4c 8d 5c 24 70       	lea    0x70(%rsp),%r11
18004b172:	8b c3                	mov    %ebx,%eax
18004b174:	49 8b 5b 30          	mov    0x30(%r11),%rbx
18004b178:	49 8b 73 40          	mov    0x40(%r11),%rsi
18004b17c:	49 8b e3             	mov    %r11,%rsp
18004b17f:	41 5f                	pop    %r15
18004b181:	41 5e                	pop    %r14
18004b183:	41 5c                	pop    %r12
18004b185:	5f                   	pop    %rdi
18004b186:	5d                   	pop    %rbp
18004b187:	c3                   	ret
18004b188:	cc                   	int3
18004b189:	cc                   	int3
18004b18a:	cc                   	int3
18004b18b:	cc                   	int3
18004b18c:	40 55                	rex push %rbp
18004b18e:	53                   	push   %rbx
18004b18f:	56                   	push   %rsi
18004b190:	57                   	push   %rdi
18004b191:	41 54                	push   %r12
18004b193:	41 55                	push   %r13
18004b195:	41 56                	push   %r14
18004b197:	41 57                	push   %r15
18004b199:	48 8d 6c 24 e1       	lea    -0x1f(%rsp),%rbp
18004b19e:	48 81 ec b8 00 00 00 	sub    $0xb8,%rsp
18004b1a5:	48 8b 01             	mov    (%rcx),%rax
18004b1a8:	45 33 ed             	xor    %r13d,%r13d
18004b1ab:	0f 10 01             	movups (%rcx),%xmm0
18004b1ae:	48 8b f2             	mov    %rdx,%rsi
18004b1b1:	41 8b fd             	mov    %r13d,%edi
18004b1b4:	f2 0f 10 49 10       	movsd  0x10(%rcx),%xmm1
18004b1b9:	45 8b fd             	mov    %r13d,%r15d
18004b1bc:	41 8d 4d 01          	lea    0x1(%r13),%ecx
18004b1c0:	48 89 45 e7          	mov    %rax,-0x19(%rbp)
18004b1c4:	88 4d 67             	mov    %cl,0x67(%rbp)
18004b1c7:	48 89 55 07          	mov    %rdx,0x7(%rbp)
18004b1cb:	44 88 6d 6f          	mov    %r13b,0x6f(%rbp)
18004b1cf:	41 83 ce ff          	or     $0xffffffff,%r14d
18004b1d3:	f2 0f 11 4d cf       	movsd  %xmm1,-0x31(%rbp)
18004b1d8:	33 c0                	xor    %eax,%eax
18004b1da:	48 89 7d df          	mov    %rdi,-0x21(%rbp)
18004b1de:	48 81 7d cf 00 02 00 	cmpq   $0x200,-0x31(%rbp)
18004b1e5:	00
18004b1e6:	4d 8b e5             	mov    %r13,%r12
18004b1e9:	0f 11 45 bf          	movups %xmm0,-0x41(%rbp)
18004b1ed:	4c 89 6d d7          	mov    %r13,-0x29(%rbp)
18004b1f1:	0f 57 c0             	xorps  %xmm0,%xmm0
18004b1f4:	4c 89 6d af          	mov    %r13,-0x51(%rbp)
18004b1f8:	0f 11 45 ef          	movups %xmm0,-0x11(%rbp)
18004b1fc:	44 89 75 fb          	mov    %r14d,-0x5(%rbp)
18004b200:	48 89 45 ff          	mov    %rax,-0x1(%rbp)
18004b204:	44 89 75 77          	mov    %r14d,0x77(%rbp)
18004b208:	4c 89 6d a7          	mov    %r13,-0x59(%rbp)
18004b20c:	4c 89 6d b7          	mov    %r13,-0x49(%rbp)
18004b210:	4c 89 6d 7f          	mov    %r13,0x7f(%rbp)
18004b214:	0f 82 a3 03 00 00    	jb     0x18004b5bd
18004b21a:	48 f7 45 cf ff 01 00 	testq  $0x1ff,-0x31(%rbp)
18004b221:	00
18004b222:	0f 85 95 03 00 00    	jne    0x18004b5bd
18004b228:	8b d1                	mov    %ecx,%edx
18004b22a:	4c 8d 4d b7          	lea    -0x49(%rbp),%r9
18004b22e:	48 8d 4d bf          	lea    -0x41(%rbp),%rcx
18004b232:	45 33 c0             	xor    %r8d,%r8d
18004b235:	e8 92 0d 00 00       	call   0x18004bfcc
18004b23a:	8b d8                	mov    %eax,%ebx
18004b23c:	85 c0                	test   %eax,%eax
18004b23e:	0f 88 8d 03 00 00    	js     0x18004b5d1
18004b244:	48 8b 7d b7          	mov    -0x49(%rbp),%rdi
18004b248:	48 8b cf             	mov    %rdi,%rcx
18004b24b:	e8 64 05 00 00       	call   0x18004b7b4
18004b250:	85 c0                	test   %eax,%eax
18004b252:	0f 89 b2 00 00 00    	jns    0x18004b30a
18004b258:	48 83 65 b7 00       	andq   $0x0,-0x49(%rbp)
18004b25d:	4c 8d 4d b7          	lea    -0x49(%rbp),%r9
18004b261:	45 33 c0             	xor    %r8d,%r8d
18004b264:	48 8d 4d bf          	lea    -0x41(%rbp),%rcx
18004b268:	41 8d 50 02          	lea    0x2(%r8),%edx
18004b26c:	e8 5b 0d 00 00       	call   0x18004bfcc
18004b271:	4c 8b 75 b7          	mov    -0x49(%rbp),%r14
18004b275:	8b d8                	mov    %eax,%ebx
18004b277:	85 c0                	test   %eax,%eax
18004b279:	78 74                	js     0x18004b2ef
18004b27b:	49 8b ce             	mov    %r14,%rcx
18004b27e:	e8 31 05 00 00       	call   0x18004b7b4
18004b283:	8b d8                	mov    %eax,%ebx
18004b285:	85 c0                	test   %eax,%eax
18004b287:	78 66                	js     0x18004b2ef
18004b289:	83 7f 3c 02          	cmpl   $0x2,0x3c(%rdi)
18004b28d:	75 07                	jne    0x18004b296
18004b28f:	bb 01 00 00 c0       	mov    $0xc0000001,%ebx
18004b294:	eb 59                	jmp    0x18004b2ef
18004b296:	b9 04 00 00 00       	mov    $0x4,%ecx
18004b29b:	48 8b c7             	mov    %rdi,%rax
18004b29e:	49 8b d6             	mov    %r14,%rdx
18004b2a1:	44 8d 41 7c          	lea    0x7c(%rcx),%r8d
18004b2a5:	0f 10 02             	movups (%rdx),%xmm0
18004b2a8:	0f 11 00             	movups %xmm0,(%rax)
18004b2ab:	0f 10 4a 10          	movups 0x10(%rdx),%xmm1
18004b2af:	0f 11 48 10          	movups %xmm1,0x10(%rax)
18004b2b3:	0f 10 42 20          	movups 0x20(%rdx),%xmm0
18004b2b7:	0f 11 40 20          	movups %xmm0,0x20(%rax)
18004b2bb:	0f 10 4a 30          	movups 0x30(%rdx),%xmm1
18004b2bf:	0f 11 48 30          	movups %xmm1,0x30(%rax)
18004b2c3:	0f 10 42 40          	movups 0x40(%rdx),%xmm0
18004b2c7:	0f 11 40 40          	movups %xmm0,0x40(%rax)
18004b2cb:	0f 10 4a 50          	movups 0x50(%rdx),%xmm1
18004b2cf:	0f 11 48 50          	movups %xmm1,0x50(%rax)
18004b2d3:	0f 10 42 60          	movups 0x60(%rdx),%xmm0
18004b2d7:	0f 11 40 60          	movups %xmm0,0x60(%rax)
18004b2db:	49 03 c0             	add    %r8,%rax
18004b2de:	0f 10 4a 70          	movups 0x70(%rdx),%xmm1
18004b2e2:	49 03 d0             	add    %r8,%rdx
18004b2e5:	0f 11 48 f0          	movups %xmm1,-0x10(%rax)
18004b2e9:	48 83 e9 01          	sub    $0x1,%rcx
18004b2ed:	75 b6                	jne    0x18004b2a5
18004b2ef:	4d 85 f6             	test   %r14,%r14
18004b2f2:	74 08                	je     0x18004b2fc
18004b2f4:	49 8b ce             	mov    %r14,%rcx
18004b2f7:	e8 00 ed 04 00       	call   0x180099ffc
18004b2fc:	85 db                	test   %ebx,%ebx
18004b2fe:	79 0a                	jns    0x18004b30a
18004b300:	bb 01 00 3a c0       	mov    $0xc03a0001,%ebx
18004b305:	e9 08 02 00 00       	jmp    0x18004b512
18004b30a:	83 7f 3c 02          	cmpl   $0x2,0x3c(%rdi)
18004b30e:	74 5c                	je     0x18004b36c
18004b310:	45 33 c0             	xor    %r8d,%r8d
18004b313:	4c 8d 4d 7f          	lea    0x7f(%rbp),%r9
18004b317:	48 8d 4d bf          	lea    -0x41(%rbp),%rcx
18004b31b:	41 8d 50 02          	lea    0x2(%r8),%edx
18004b31f:	e8 a8 0c 00 00       	call   0x18004bfcc
18004b324:	8b d8                	mov    %eax,%ebx
18004b326:	85 c0                	test   %eax,%eax
18004b328:	78 6f                	js     0x18004b399
18004b32a:	4c 8d 4d d7          	lea    -0x29(%rbp),%r9
18004b32e:	4c 8b c7             	mov    %rdi,%r8
18004b331:	ba 03 00 00 00       	mov    $0x3,%edx
18004b336:	48 8d 4d bf          	lea    -0x41(%rbp),%rcx
18004b33a:	e8 8d 0c 00 00       	call   0x18004bfcc
18004b33f:	4c 8b 65 d7          	mov    -0x29(%rbp),%r12
18004b343:	8b d8                	mov    %eax,%ebx
18004b345:	85 c0                	test   %eax,%eax
18004b347:	78 47                	js     0x18004b390
18004b349:	4c 8d 4d a7          	lea    -0x59(%rbp),%r9
18004b34d:	4d 8b c4             	mov    %r12,%r8
18004b350:	ba 04 00 00 00       	mov    $0x4,%edx
18004b355:	48 8d 4d bf          	lea    -0x41(%rbp),%rcx
18004b359:	e8 6e 0c 00 00       	call   0x18004bfcc
18004b35e:	4c 8b 6d 7f          	mov    0x7f(%rbp),%r13
18004b362:	8b d8                	mov    %eax,%ebx
18004b364:	85 c0                	test   %eax,%eax
18004b366:	0f 88 99 01 00 00    	js     0x18004b505
18004b36c:	8b 4f 3c             	mov    0x3c(%rdi),%ecx
18004b36f:	83 e9 02             	sub    $0x2,%ecx
18004b372:	0f 84 c1 00 00 00    	je     0x18004b439
18004b378:	83 e9 01             	sub    $0x1,%ecx
18004b37b:	0f 84 99 00 00 00    	je     0x18004b41a
18004b381:	83 f9 01             	cmp    $0x1,%ecx
18004b384:	74 1c                	je     0x18004b3a2
18004b386:	bb bb 00 00 c0       	mov    $0xc00000bb,%ebx
18004b38b:	e9 75 01 00 00       	jmp    0x18004b505
18004b390:	4c 8b 6d 7f          	mov    0x7f(%rbp),%r13
18004b394:	e9 6c 01 00 00       	jmp    0x18004b505
18004b399:	4c 8b 6d 7f          	mov    0x7f(%rbp),%r13
18004b39d:	e9 70 01 00 00       	jmp    0x18004b512
18004b3a2:	bb 88 00 00 00       	mov    $0x88,%ebx
18004b3a7:	8b cb                	mov    %ebx,%ecx
18004b3a9:	e8 a2 ea 04 00       	call   0x180099e50
18004b3ae:	48 89 45 af          	mov    %rax,-0x51(%rbp)
18004b3b2:	4c 8b f0             	mov    %rax,%r14
18004b3b5:	48 85 c0             	test   %rax,%rax
18004b3b8:	74 12                	je     0x18004b3cc
18004b3ba:	44 8b c3             	mov    %ebx,%r8d
18004b3bd:	33 d2                	xor    %edx,%edx
18004b3bf:	48 8b c8             	mov    %rax,%rcx
18004b3c2:	e8 b9 a8 0e 00       	call   0x180135c80
18004b3c7:	41 83 4e 50 ff       	orl    $0xffffffff,0x50(%r14)
18004b3cc:	4d 85 f6             	test   %r14,%r14
18004b3cf:	75 0a                	jne    0x18004b3db
18004b3d1:	bb 17 00 00 c0       	mov    $0xc0000017,%ebx
18004b3d6:	e9 2a 01 00 00       	jmp    0x18004b505
18004b3db:	48 8b 45 a7          	mov    -0x59(%rbp),%rax
18004b3df:	48 8d 4d bf          	lea    -0x41(%rbp),%rcx
18004b3e3:	4d 8b cc             	mov    %r12,%r9
18004b3e6:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
18004b3eb:	4d 8b c5             	mov    %r13,%r8
18004b3ee:	48 8b d7             	mov    %rdi,%rdx
18004b3f1:	e8 2a 02 00 00       	call   0x18004b620
18004b3f6:	8b d8                	mov    %eax,%ebx
18004b3f8:	85 c0                	test   %eax,%eax
18004b3fa:	0f 88 05 01 00 00    	js     0x18004b505
18004b400:	4c 8d 4d ef          	lea    -0x11(%rbp),%r9
18004b404:	4d 8b c4             	mov    %r12,%r8
18004b407:	48 8d 4d bf          	lea    -0x41(%rbp),%rcx
18004b40b:	e8 dc fb ff ff       	call   0x18004afec
18004b410:	8b d8                	mov    %eax,%ebx