180037c84:	48 85 c9             	test   %rcx,%rcx
180037c87:	74 0d                	je     0x180037c96
180037c89:	48 8b 01             	mov    (%rcx),%rax
180037c8c:	8b d5                	mov    %ebp,%edx
180037c8e:	48 8b 00             	mov    (%rax),%rax
180037c91:	ff d0                	call   *%rax
180037c93:	0f 1f 00             	nopl   (%rax)
180037c96:	48 8b 8f d8 00 00 00 	mov    0xd8(%rdi),%rcx
180037c9d:	48 85 c9             	test   %rcx,%rcx
180037ca0:	74 0d                	je     0x180037caf
180037ca2:	e8 b5 ec 00 00       	call   0x18004695c
180037ca7:	48 83 a7 d8 00 00 00 	andq   $0x0,0xd8(%rdi)
180037cae:	00
180037caf:	48 8b 9f e0 00 00 00 	mov    0xe0(%rdi),%rbx
180037cb6:	48 85 db             	test   %rbx,%rbx
180037cb9:	0f 84 88 00 00 00    	je     0x180037d47
180037cbf:	48 8d 54 24 48       	lea    0x48(%rsp),%rdx
180037cc4:	48 8b cb             	mov    %rbx,%rcx
180037cc7:	e8 38 be 00 00       	call   0x180043b04
180037ccc:	eb 5c                	jmp    0x180037d2a
180037cce:	48 85 f6             	test   %rsi,%rsi
180037cd1:	74 43                	je     0x180037d16
180037cd3:	48 8b 4e 30          	mov    0x30(%rsi),%rcx
180037cd7:	48 85 c9             	test   %rcx,%rcx
180037cda:	74 32                	je     0x180037d0e
180037cdc:	48 8b 46 30          	mov    0x30(%rsi),%rax
180037ce0:	48 89 44 24 40       	mov    %rax,0x40(%rsp)
180037ce5:	48 8b 44 24 40       	mov    0x40(%rsp),%rax
180037cea:	48 89 44 24 40       	mov    %rax,0x40(%rsp)
180037cef:	48 8b 44 24 40       	mov    0x40(%rsp),%rax
180037cf4:	48 85 c0             	test   %rax,%rax
180037cf7:	74 15                	je     0x180037d0e
180037cf9:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
180037cfe:	48 8b cb             	mov    %rbx,%rcx
180037d01:	e8 16 bb 00 00       	call   0x18004381c
180037d06:	48 8b cb             	mov    %rbx,%rcx
180037d09:	e8 4e ec 00 00       	call   0x18004695c
180037d0e:	48 8b ce             	mov    %rsi,%rcx
180037d11:	e8 46 ec 00 00       	call   0x18004695c
180037d16:	48 8b 9f e0 00 00 00 	mov    0xe0(%rdi),%rbx
180037d1d:	48 8d 54 24 48       	lea    0x48(%rsp),%rdx
180037d22:	48 8b cb             	mov    %rbx,%rcx
180037d25:	e8 e2 be 00 00       	call   0x180043c0c
180037d2a:	48 8b f0             	mov    %rax,%rsi
180037d2d:	48 85 c0             	test   %rax,%rax
180037d30:	75 9c                	jne    0x180037cce
180037d32:	48 85 db             	test   %rbx,%rbx
180037d35:	74 10                	je     0x180037d47
180037d37:	48 8b cb             	mov    %rbx,%rcx
180037d3a:	e8 dd ba 00 00       	call   0x18004381c
180037d3f:	48 8b cb             	mov    %rbx,%rcx
180037d42:	e8 15 ec 00 00       	call   0x18004695c
180037d47:	48 8d b7 c0 00 00 00 	lea    0xc0(%rdi),%rsi
180037d4e:	eb 34                	jmp    0x180037d84
180037d50:	48 39 73 08          	cmp    %rsi,0x8(%rbx)
180037d54:	0f 85 e5 00 00 00    	jne    0x180037e3f
180037d5a:	48 8b 03             	mov    (%rbx),%rax
180037d5d:	48 39 58 08          	cmp    %rbx,0x8(%rax)
180037d61:	0f 85 d8 00 00 00    	jne    0x180037e3f
180037d67:	48 89 06             	mov    %rax,(%rsi)
180037d6a:	48 89 70 08          	mov    %rsi,0x8(%rax)
180037d6e:	48 8b 4b 40          	mov    0x40(%rbx),%rcx
180037d72:	48 85 c9             	test   %rcx,%rcx
180037d75:	74 05                	je     0x180037d7c
180037d77:	e8 e0 eb 00 00       	call   0x18004695c
180037d7c:	48 8b cb             	mov    %rbx,%rcx
180037d7f:	e8 d8 eb 00 00       	call   0x18004695c
180037d84:	48 8b 1e             	mov    (%rsi),%rbx
180037d87:	48 3b de             	cmp    %rsi,%rbx
180037d8a:	75 c4                	jne    0x180037d50
180037d8c:	48 8d 9f f8 00 00 00 	lea    0xf8(%rdi),%rbx
180037d93:	eb 37                	jmp    0x180037dcc
180037d95:	48 39 58 08          	cmp    %rbx,0x8(%rax)
180037d99:	0f 85 a0 00 00 00    	jne    0x180037e3f
180037d9f:	48 8b 08             	mov    (%rax),%rcx
180037da2:	48 39 41 08          	cmp    %rax,0x8(%rcx)
180037da6:	0f 85 93 00 00 00    	jne    0x180037e3f
180037dac:	48 89 0b             	mov    %rcx,(%rbx)
180037daf:	48 89 59 08          	mov    %rbx,0x8(%rcx)
180037db3:	48 8d 88 f8 fe ff ff 	lea    -0x108(%rax),%rcx
180037dba:	48 85 c9             	test   %rcx,%rcx
180037dbd:	74 0d                	je     0x180037dcc
180037dbf:	48 8b 01             	mov    (%rcx),%rax
180037dc2:	8b d5                	mov    %ebp,%edx
180037dc4:	48 8b 00             	mov    (%rax),%rax
180037dc7:	ff d0                	call   *%rax
180037dc9:	0f 1f 00             	nopl   (%rax)
180037dcc:	48 8b 03             	mov    (%rbx),%rax
180037dcf:	48 3b c3             	cmp    %rbx,%rax
180037dd2:	75 c1                	jne    0x180037d95
180037dd4:	48 8b 8f 18 01 00 00 	mov    0x118(%rdi),%rcx
180037ddb:	48 85 c9             	test   %rcx,%rcx
180037dde:	74 0d                	je     0x180037ded
180037de0:	48 8b 01             	mov    (%rcx),%rax
180037de3:	8b d5                	mov    %ebp,%edx
180037de5:	48 8b 00             	mov    (%rax),%rax
180037de8:	ff d0                	call   *%rax
180037dea:	0f 1f 00             	nopl   (%rax)
180037ded:	bb 0a 00 00 00       	mov    $0xa,%ebx
180037df2:	48 8d b7 40 04 00 00 	lea    0x440(%rdi),%rsi
180037df9:	48 83 ee 48          	sub    $0x48,%rsi
180037dfd:	48 8b ce             	mov    %rsi,%rcx
180037e00:	e8 ab f6 00 00       	call   0x1800474b0
180037e05:	48 2b dd             	sub    %rbp,%rbx
180037e08:	75 ef                	jne    0x180037df9
180037e0a:	48 8d 8f 20 01 00 00 	lea    0x120(%rdi),%rcx
180037e11:	e8 2a f7 ff ff       	call   0x180037540
180037e16:	48 8b 8f b8 00 00 00 	mov    0xb8(%rdi),%rcx
180037e1d:	48 85 c9             	test   %rcx,%rcx
180037e20:	74 05                	je     0x180037e27
180037e22:	e8 35 eb 00 00       	call   0x18004695c
180037e27:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
180037e2c:	48 8d 05 fd b5 10 00 	lea    0x10b5fd(%rip),%rax        # 0x180143430
180037e33:	48 89 07             	mov    %rax,(%rdi)
180037e36:	48 83 c4 20          	add    $0x20,%rsp
180037e3a:	5f                   	pop    %rdi
180037e3b:	5e                   	pop    %rsi
180037e3c:	5d                   	pop    %rbp
180037e3d:	c3                   	ret
180037e3e:	cc                   	int3
180037e3f:	b9 03 00 00 00       	mov    $0x3,%ecx
180037e44:	cd 29                	int    $0x29
180037e46:	cc                   	int3
180037e47:	cc                   	int3
180037e48:	48 83 ec 28          	sub    $0x28,%rsp
180037e4c:	b9 40 04 00 00       	mov    $0x440,%ecx
180037e51:	e8 be ea 00 00       	call   0x180046914
180037e56:	48 8b c8             	mov    %rax,%rcx
180037e59:	33 c0                	xor    %eax,%eax
180037e5b:	48 85 c9             	test   %rcx,%rcx
180037e5e:	74 05                	je     0x180037e65
180037e60:	e8 37 fc ff ff       	call   0x180037a9c
180037e65:	48 83 c4 28          	add    $0x28,%rsp
180037e69:	c3                   	ret
180037e6a:	cc                   	int3
180037e6b:	cc                   	int3
180037e6c:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
180037e71:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
180037e76:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
180037e7b:	57                   	push   %rdi
180037e7c:	41 56                	push   %r14
180037e7e:	41 57                	push   %r15
180037e80:	48 83 ec 20          	sub    $0x20,%rsp
180037e84:	48 8b 42 10          	mov    0x10(%rdx),%rax
180037e88:	48 8b d9             	mov    %rcx,%rbx
180037e8b:	48 8b fa             	mov    %rdx,%rdi
180037e8e:	4d 8b f0             	mov    %r8,%r14
180037e91:	48 8b 70 10          	mov    0x10(%rax),%rsi
180037e95:	48 8b 4e 08          	mov    0x8(%rsi),%rcx
180037e99:	8b 91 08 01 00 00    	mov    0x108(%rcx),%edx
180037e9f:	e8 80 6c 10 00       	call   0x18013eb24
180037ea4:	45 33 ff             	xor    %r15d,%r15d
180037ea7:	84 c0                	test   %al,%al
180037ea9:	75 0b                	jne    0x180037eb6
180037eab:	41 ba 35 00 38 c0    	mov    $0xc0380035,%r10d
180037eb1:	e9 3b 03 00 00       	jmp    0x1800381f1
180037eb6:	48 8b 8e d8 00 00 00 	mov    0xd8(%rsi),%rcx
180037ebd:	e8 ae 6a 10 00       	call   0x18013e970
180037ec2:	48 8b e8             	mov    %rax,%rbp
180037ec5:	0f 10 40 20          	movups 0x20(%rax),%xmm0
180037ec9:	f3 0f 7f 43 08       	movdqu %xmm0,0x8(%rbx)
180037ece:	0f 10 4f 20          	movups 0x20(%rdi),%xmm1
180037ed2:	f3 0f 7f 4b 18       	movdqu %xmm1,0x18(%rbx)
180037ed7:	8a 4f 42             	mov    0x42(%rdi),%cl
180037eda:	88 4b 28             	mov    %cl,0x28(%rbx)
180037edd:	0f 10 47 58          	movups 0x58(%rdi),%xmm0
180037ee1:	48 8b 8b e8 00 00 00 	mov    0xe8(%rbx),%rcx
180037ee8:	0f 11 43 30          	movups %xmm0,0x30(%rbx)
180037eec:	0f 10 4f 68          	movups 0x68(%rdi),%xmm1
180037ef0:	0f 11 4b 40          	movups %xmm1,0x40(%rbx)
180037ef4:	0f 10 47 78          	movups 0x78(%rdi),%xmm0
180037ef8:	0f 11 43 50          	movups %xmm0,0x50(%rbx)
180037efc:	f2 0f 10 8f 88 00 00 	movsd  0x88(%rdi),%xmm1
180037f03:	00
180037f04:	f2 0f 11 4b 60       	movsd  %xmm1,0x60(%rbx)
180037f09:	48 8b 47 48          	mov    0x48(%rdi),%rax
180037f0d:	48 89 43 68          	mov    %rax,0x68(%rbx)
180037f11:	48 8b 87 e8 00 00 00 	mov    0xe8(%rdi),%rax
180037f18:	48 89 43 70          	mov    %rax,0x70(%rbx)
180037f1c:	b8 02 00 00 00       	mov    $0x2,%eax
180037f21:	48 85 c9             	test   %rcx,%rcx
180037f24:	75 06                	jne    0x180037f2c
180037f26:	8b 87 00 01 00 00    	mov    0x100(%rdi),%eax
180037f2c:	48 85 c9             	test   %rcx,%rcx
180037f2f:	89 43 78             	mov    %eax,0x78(%rbx)
180037f32:	8b 45 48             	mov    0x48(%rbp),%eax
180037f35:	48 8d 8b 98 00 00 00 	lea    0x98(%rbx),%rcx
180037f3c:	49 0f 45 f7          	cmovne %r15,%rsi
180037f40:	89 43 7c             	mov    %eax,0x7c(%rbx)
180037f43:	8b 45 4c             	mov    0x4c(%rbp),%eax
180037f46:	ba e0 01 00 00       	mov    $0x1e0,%edx
180037f4b:	41 b8 01 00 00 00    	mov    $0x1,%r8d
180037f51:	48 89 b3 88 00 00 00 	mov    %rsi,0x88(%rbx)
180037f58:	89 83 80 00 00 00    	mov    %eax,0x80(%rbx)
180037f5e:	4c 89 b3 90 00 00 00 	mov    %r14,0x90(%rbx)
180037f65:	e8 3a ed 00 00       	call   0x180046ca4
180037f6a:	44 8b d0             	mov    %eax,%r10d
180037f6d:	85 c0                	test   %eax,%eax
180037f6f:	0f 88 5e 02 00 00    	js     0x1800381d3
180037f75:	f6 45 40 02          	testb  $0x2,0x40(%rbp)
180037f79:	74 04                	je     0x180037f7f
180037f7b:	83 4b 2c 01          	orl    $0x1,0x2c(%rbx)
180037f7f:	48 8b d7             	mov    %rdi,%rdx
180037f82:	48 8b cb             	mov    %rbx,%rcx
180037f85:	e8 f6 02 00 00       	call   0x180038280
180037f8a:	44 8b d0             	mov    %eax,%r10d
180037f8d:	85 c0                	test   %eax,%eax
180037f8f:	0f 88 3e 02 00 00    	js     0x1800381d3
180037f95:	48 8b d7             	mov    %rdi,%rdx
180037f98:	48 8b cb             	mov    %rbx,%rcx
180037f9b:	e8 54 09 00 00       	call   0x1800388f4
180037fa0:	44 8b d0             	mov    %eax,%r10d
180037fa3:	85 c0                	test   %eax,%eax
180037fa5:	0f 88 28 02 00 00    	js     0x1800381d3
180037fab:	48 8b d7             	mov    %rdi,%rdx
180037fae:	48 8b cb             	mov    %rbx,%rcx
180037fb1:	e8 8a 0a 00 00       	call   0x180038a40
180037fb6:	44 8b d0             	mov    %eax,%r10d
180037fb9:	85 c0                	test   %eax,%eax
180037fbb:	0f 88 12 02 00 00    	js     0x1800381d3
180037fc1:	48 8b d7             	mov    %rdi,%rdx
180037fc4:	48 8b cb             	mov    %rbx,%rcx
180037fc7:	e8 d8 0c 00 00       	call   0x180038ca4
180037fcc:	44 8b d0             	mov    %eax,%r10d
180037fcf:	85 c0                	test   %eax,%eax
180037fd1:	0f 88 fc 01 00 00    	js     0x1800381d3
180037fd7:	48 8d 8b 20 01 00 00 	lea    0x120(%rbx),%rcx
180037fde:	48 8b d7             	mov    %rdi,%rdx
180037fe1:	e8 06 f6 ff ff       	call   0x1800375ec
180037fe6:	44 8b d0             	mov    %eax,%r10d
180037fe9:	85 c0                	test   %eax,%eax
180037feb:	0f 88 e2 01 00 00    	js     0x1800381d3
180037ff1:	80 7f 42 02          	cmpb   $0x2,0x42(%rdi)
180037ff5:	75 53                	jne    0x18003804a
180037ff7:	4c 39 bf 98 00 00 00 	cmp    %r15,0x98(%rdi)
180037ffe:	74 4a                	je     0x18003804a
180038000:	b9 18 00 00 00       	mov    $0x18,%ecx
180038005:	e8 0a e9 00 00       	call   0x180046914
18003800a:	4c 8b d0             	mov    %rax,%r10
18003800d:	48 85 c0             	test   %rax,%rax
180038010:	74 0c                	je     0x18003801e
180038012:	48 8d 05 af b3 10 00 	lea    0x10b3af(%rip),%rax        # 0x1801433c8
180038019:	49 89 02             	mov    %rax,(%r10)
18003801c:	eb 03                	jmp    0x180038021
18003801e:	4d 8b d7             	mov    %r15,%r10
180038021:	4c 89 93 40 01 00 00 	mov    %r10,0x140(%rbx)
180038028:	4d 85 d2             	test   %r10,%r10
18003802b:	75 0b                	jne    0x180038038
18003802d:	41 ba 9a 00 00 c0    	mov    $0xc000009a,%r10d
180038033:	e9 9b 01 00 00       	jmp    0x1800381d3
180038038:	b2 04                	mov    $0x4,%dl
18003803a:	49 89 5a 08          	mov    %rbx,0x8(%r10)
18003803e:	48 8b cb             	mov    %rbx,%rcx
180038041:	e8 02 02 00 00       	call   0x180038248
180038046:	49 89 42 10          	mov    %rax,0x10(%r10)
18003804a:	48 8b d7             	mov    %rdi,%rdx
18003804d:	48 8b cb             	mov    %rbx,%rcx
180038050:	e8 b3 06 00 00       	call   0x180038708
180038055:	44 8b d0             	mov    %eax,%r10d
180038058:	85 c0                	test   %eax,%eax
18003805a:	0f 88 73 01 00 00    	js     0x1800381d3
180038060:	80 7f 42 02          	cmpb   $0x2,0x42(%rdi)
180038064:	45 8b d7             	mov    %r15d,%r10d
180038067:	75 6a                	jne    0x1800380d3
180038069:	b2 05                	mov    $0x5,%dl
18003806b:	48 8b cb             	mov    %rbx,%rcx
18003806e:	e8 d5 01 00 00       	call   0x180038248
180038073:	48 85 c0             	test   %rax,%rax
180038076:	75 1e                	jne    0x180038096
180038078:	b2 03                	mov    $0x3,%dl
18003807a:	48 8b cb             	mov    %rbx,%rcx
18003807d:	e8 c6 01 00 00       	call   0x180038248
180038082:	48 85 c0             	test   %rax,%rax
180038085:	75 0f                	jne    0x180038096
180038087:	b2 07                	mov    $0x7,%dl
180038089:	48 8b cb             	mov    %rbx,%rcx
18003808c:	e8 b7 01 00 00       	call   0x180038248
180038091:	48 85 c0             	test   %rax,%rax
180038094:	74 3d                	je     0x1800380d3
180038096:	b9 38 01 00 00       	mov    $0x138,%ecx
18003809b:	e8 74 e8 00 00       	call   0x180046914
1800380a0:	48 85 c0             	test   %rax,%rax
1800380a3:	74 0a                	je     0x1800380af
1800380a5:	48 8b c8             	mov    %rax,%rcx
1800380a8:	e8 53 ff 0f 00       	call   0x180138000
1800380ad:	eb 03                	jmp    0x1800380b2
1800380af:	49 8b c7             	mov    %r15,%rax
1800380b2:	48 89 83 50 01 00 00 	mov    %rax,0x150(%rbx)
1800380b9:	48 85 c0             	test   %rax,%rax
1800380bc:	0f 84 6b ff ff ff    	je     0x18003802d
1800380c2:	4c 8b c3             	mov    %rbx,%r8
1800380c5:	48 8b d7             	mov    %rdi,%rdx
1800380c8:	48 8b c8             	mov    %rax,%rcx
1800380cb:	e8 74 00 10 00       	call   0x180138144
1800380d0:	44 8b d0             	mov    %eax,%r10d
1800380d3:	45 85 d2             	test   %r10d,%r10d
1800380d6:	0f 88 f7 00 00 00    	js     0x1800381d3
1800380dc:	48 8b d7             	mov    %rdi,%rdx
1800380df:	48 8b cb             	mov    %rbx,%rcx
1800380e2:	e8 e5 06 00 00       	call   0x1800387cc
1800380e7:	44 8b d0             	mov    %eax,%r10d
1800380ea:	85 c0                	test   %eax,%eax
1800380ec:	0f 88 e1 00 00 00    	js     0x1800381d3
1800380f2:	48 8b d7             	mov    %rdi,%rdx
1800380f5:	48 8b cb             	mov    %rbx,%rcx
1800380f8:	e8 23 05 00 00       	call   0x180038620
1800380fd:	44 8b d0             	mov    %eax,%r10d
180038100:	85 c0                	test   %eax,%eax
180038102:	0f 88 cb 00 00 00    	js     0x1800381d3
180038108:	48 8b d7             	mov    %rdi,%rdx
18003810b:	48 8b cb             	mov    %rbx,%rcx
18003810e:	e8 45 0a 00 00       	call   0x180038b58
180038113:	44 8b d0             	mov    %eax,%r10d
180038116:	85 c0                	test   %eax,%eax
180038118:	0f 88 b5 00 00 00    	js     0x1800381d3
18003811e:	48 8b 8b 50 01 00 00 	mov    0x150(%rbx),%rcx
180038125:	45 8b d7             	mov    %r15d,%r10d
180038128:	48 85 c9             	test   %rcx,%rcx
18003812b:	74 32                	je     0x18003815f
18003812d:	4c 39 79 38          	cmp    %r15,0x38(%rcx)
180038131:	74 2c                	je     0x18003815f
180038133:	8b 43 2c             	mov    0x2c(%rbx),%eax
180038136:	a8 10                	test   $0x10,%al
180038138:	74 25                	je     0x18003815f
18003813a:	4c 39 bb 90 00 00 00 	cmp    %r15,0x90(%rbx)
180038141:	75 1c                	jne    0x18003815f
180038143:	ba 02 00 00 00       	mov    $0x2,%edx
180038148:	e8 97 04 10 00       	call   0x1801385e4
18003814d:	44 8b d0             	mov    %eax,%r10d
180038150:	85 c0                	test   %eax,%eax
180038152:	78 0b                	js     0x18003815f
180038154:	48 8b cb             	mov    %rbx,%rcx
180038157:	e8 c8 18 00 00       	call   0x180039a24
18003815c:	44 8b d0             	mov    %eax,%r10d
18003815f:	45 85 d2             	test   %r10d,%r10d
180038162:	78 6f                	js     0x1800381d3
180038164:	48 8b cb             	mov    %rbx,%rcx
180038167:	e8 e0 0c 00 00       	call   0x180038e4c
18003816c:	44 8b d0             	mov    %eax,%r10d
18003816f:	85 c0                	test   %eax,%eax
180038171:	78 60                	js     0x1800381d3
180038173:	48 8b 8b 48 01 00 00 	mov    0x148(%rbx),%rcx
18003817a:	45 8b d7             	mov    %r15d,%r10d
18003817d:	48 85 c9             	test   %rcx,%rcx
180038180:	74 08                	je     0x18003818a
180038182:	e8 21 60 10 00       	call   0x18013e1a8
180038187:	44 8b d0             	mov    %eax,%r10d
18003818a:	45 85 d2             	test   %r10d,%r10d
18003818d:	78 44                	js     0x1800381d3
18003818f:	45 8b d7             	mov    %r15d,%r10d