180028df2:	85 c0                	test   %eax,%eax
180028df4:	78 0b                	js     0x180028e01
180028df6:	41 8b 3f             	mov    (%r15),%edi
180028df9:	39 7e 0c             	cmp    %edi,0xc(%rsi)
180028dfc:	76 4a                	jbe    0x180028e48
180028dfe:	41 8b dc             	mov    %r12d,%ebx
180028e01:	85 db                	test   %ebx,%ebx
180028e03:	78 10                	js     0x180028e15
180028e05:	45 8b c5             	mov    %r13d,%r8d
180028e08:	49 8b d6             	mov    %r14,%rdx
180028e0b:	49 8b cf             	mov    %r15,%rcx
180028e0e:	e8 ed 88 08 00       	call   0x1800b1700
180028e13:	8b d8                	mov    %eax,%ebx
180028e15:	48 85 f6             	test   %rsi,%rsi
180028e18:	74 0d                	je     0x180028e27
180028e1a:	8b 16                	mov    (%rsi),%edx
180028e1c:	45 33 c0             	xor    %r8d,%r8d
180028e1f:	48 8b ce             	mov    %rsi,%rcx
180028e22:	e8 d1 8f 08 00       	call   0x1800b1df8
180028e27:	4d 85 f6             	test   %r14,%r14
180028e2a:	74 08                	je     0x180028e34
180028e2c:	49 8b ce             	mov    %r14,%rcx
180028e2f:	e8 f4 5e 08 00       	call   0x1800aed28
180028e34:	8b c3                	mov    %ebx,%eax
180028e36:	48 83 c4 78          	add    $0x78,%rsp
180028e3a:	41 5f                	pop    %r15
180028e3c:	41 5e                	pop    %r14
180028e3e:	41 5d                	pop    %r13
180028e40:	41 5c                	pop    %r12
180028e42:	5f                   	pop    %rdi
180028e43:	5e                   	pop    %rsi
180028e44:	5b                   	pop    %rbx
180028e45:	5d                   	pop    %rbp
180028e46:	c3                   	ret
180028e47:	cc                   	int3
180028e48:	44 8b 46 0c          	mov    0xc(%rsi),%r8d
180028e4c:	48 8b d6             	mov    %rsi,%rdx
180028e4f:	49 8b cf             	mov    %r15,%rcx
180028e52:	e8 69 cb 10 00       	call   0x1801359c0
180028e57:	41 89 3f             	mov    %edi,(%r15)
180028e5a:	41 39 7f 0c          	cmp    %edi,0xc(%r15)
180028e5e:	73 a1                	jae    0x180028e01
180028e60:	41 2b 7f 0c          	sub    0xc(%r15),%edi
180028e64:	8b cf                	mov    %edi,%ecx
180028e66:	41 8b 7f 0c          	mov    0xc(%r15),%edi
180028e6a:	49 03 ff             	add    %r15,%rdi
180028e6d:	33 c0                	xor    %eax,%eax
180028e6f:	f3 aa                	rep stos %al,%es:(%rdi)
180028e71:	eb 8e                	jmp    0x180028e01
180028e73:	48 8b 75 b8          	mov    -0x48(%rbp),%rsi
180028e77:	eb 9c                	jmp    0x180028e15
180028e79:	cc                   	int3
180028e7a:	cc                   	int3
180028e7b:	cc                   	int3
180028e7c:	45 33 c0             	xor    %r8d,%r8d
180028e7f:	4c 8b c9             	mov    %rcx,%r9
180028e82:	48 85 c9             	test   %rcx,%rcx
180028e85:	74 2f                	je     0x180028eb6
180028e87:	48 85 d2             	test   %rdx,%rdx
180028e8a:	74 2a                	je     0x180028eb6
180028e8c:	44 39 01             	cmp    %r8d,(%rcx)
180028e8f:	75 25                	jne    0x180028eb6
180028e91:	83 79 10 05          	cmpl   $0x5,0x10(%rcx)
180028e95:	75 1f                	jne    0x180028eb6
180028e97:	83 79 18 10          	cmpl   $0x10,0x18(%rcx)
180028e9b:	72 19                	jb     0x180028eb6
180028e9d:	8b 49 18             	mov    0x18(%rcx),%ecx
180028ea0:	41 8b 41 08          	mov    0x8(%r9),%eax
180028ea4:	48 83 c1 14          	add    $0x14,%rcx
180028ea8:	48 3b c1             	cmp    %rcx,%rax
180028eab:	72 09                	jb     0x180028eb6
180028ead:	49 8d 41 20          	lea    0x20(%r9),%rax
180028eb1:	48 89 02             	mov    %rax,(%rdx)
180028eb4:	eb 06                	jmp    0x180028ebc
180028eb6:	41 b8 0d 00 00 c0    	mov    $0xc000000d,%r8d
180028ebc:	41 8b c0             	mov    %r8d,%eax
180028ebf:	c3                   	ret
180028ec0:	cc                   	int3
180028ec1:	cc                   	int3
180028ec2:	cc                   	int3
180028ec3:	cc                   	int3
180028ec4:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
180028ec9:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
180028ece:	55                   	push   %rbp
180028ecf:	57                   	push   %rdi
180028ed0:	41 54                	push   %r12
180028ed2:	41 56                	push   %r14
180028ed4:	41 57                	push   %r15
180028ed6:	48 8b ec             	mov    %rsp,%rbp
180028ed9:	48 83 ec 30          	sub    $0x30,%rsp
180028edd:	ff 05 59 c0 17 00    	incl   0x17c059(%rip)        # 0x1801a4f3c
180028ee3:	45 33 e4             	xor    %r12d,%r12d
180028ee6:	83 4d 48 ff          	orl    $0xffffffff,0x48(%rbp)
180028eea:	48 8b f1             	mov    %rcx,%rsi
180028eed:	83 39 05             	cmpl   $0x5,(%rcx)
180028ef0:	41 0f b7 d9          	movzwl %r9w,%ebx
180028ef4:	b9 00 06 00 00       	mov    $0x600,%ecx
180028ef9:	4c 89 65 30          	mov    %r12,0x30(%rbp)
180028efd:	48 0f 44 35 b3 75 14 	cmove  0x1475b3(%rip),%rsi        # 0x1801704b8
180028f04:	00
180028f05:	41 0f b7 f9          	movzwl %r9w,%edi
180028f09:	45 8b f8             	mov    %r8d,%r15d
180028f0c:	48 8b c2             	mov    %rdx,%rax
180028f0f:	45 8b f4             	mov    %r12d,%r14d
180028f12:	66 23 d9             	and    %cx,%bx
180028f15:	75 3f                	jne    0x180028f56
180028f17:	41 83 f8 01          	cmp    $0x1,%r8d
180028f1b:	76 39                	jbe    0x180028f56
180028f1d:	48 85 c0             	test   %rax,%rax
180028f20:	74 34                	je     0x180028f56
180028f22:	48 8b 48 18          	mov    0x18(%rax),%rcx
180028f26:	4c 8d 45 30          	lea    0x30(%rbp),%r8
180028f2a:	45 33 c9             	xor    %r9d,%r9d
180028f2d:	ba 01 00 00 21       	mov    $0x21000001,%edx
180028f32:	e8 31 37 05 00       	call   0x18007c668
180028f37:	4c 8b 75 30          	mov    0x30(%rbp),%r14
180028f3b:	85 c0                	test   %eax,%eax
180028f3d:	78 17                	js     0x180028f56
180028f3f:	49 8b d6             	mov    %r14,%rdx
180028f42:	48 8b ce             	mov    %rsi,%rcx
180028f45:	e8 de d6 ff ff       	call   0x180026628
180028f4a:	84 c0                	test   %al,%al
180028f4c:	74 08                	je     0x180028f56
180028f4e:	b8 00 02 00 00       	mov    $0x200,%eax
180028f53:	66 0b f8             	or     %ax,%di
180028f56:	f6 46 04 01          	testb  $0x1,0x4(%rsi)
180028f5a:	74 0a                	je     0x180028f66
180028f5c:	bb 01 00 00 c0       	mov    $0xc0000001,%ebx
180028f61:	e9 de 00 00 00       	jmp    0x180029044
180028f66:	83 3d cf bf 17 00 01 	cmpl   $0x1,0x17bfcf(%rip)        # 0x1801a4f3c
180028f6d:	41 ba 00 04 00 00    	mov    $0x400,%r10d
180028f73:	75 12                	jne    0x180028f87
180028f75:	44 39 25 bc bf 17 00 	cmp    %r12d,0x17bfbc(%rip)        # 0x1801a4f38
180028f7c:	75 de                	jne    0x180028f5c
180028f7e:	44 89 3d b3 bf 17 00 	mov    %r15d,0x17bfb3(%rip)        # 0x1801a4f38
180028f85:	eb 11                	jmp    0x180028f98
180028f87:	7e 0f                	jle    0x180028f98
180028f89:	66 85 db             	test   %bx,%bx
180028f8c:	75 0a                	jne    0x180028f98
180028f8e:	41 83 ff 01          	cmp    $0x1,%r15d
180028f92:	76 04                	jbe    0x180028f98
180028f94:	66 41 0b fa          	or     %r10w,%di
180028f98:	8b 06                	mov    (%rsi),%eax
180028f9a:	83 e8 02             	sub    $0x2,%eax
180028f9d:	a9 fb ff ff ff       	test   $0xfffffffb,%eax
180028fa2:	75 3d                	jne    0x180028fe1
180028fa4:	48 8d 4e 20          	lea    0x20(%rsi),%rcx
180028fa8:	48 85 c9             	test   %rcx,%rcx
180028fab:	74 34                	je     0x180028fe1
180028fad:	83 39 06             	cmpl   $0x6,(%rcx)
180028fb0:	75 2f                	jne    0x180028fe1
180028fb2:	48 83 c1 18          	add    $0x18,%rcx
180028fb6:	48 8d 55 30          	lea    0x30(%rbp),%rdx
180028fba:	e8 bd fe ff ff       	call   0x180028e7c
180028fbf:	8b d8                	mov    %eax,%ebx
180028fc1:	85 c0                	test   %eax,%eax
180028fc3:	78 7f                	js     0x180029044
180028fc5:	48 8b 4d 30          	mov    0x30(%rbp),%rcx
180028fc9:	45 8b ca             	mov    %r10d,%r9d
180028fcc:	45 8b c7             	mov    %r15d,%r8d
180028fcf:	4c 89 64 24 20       	mov    %r12,0x20(%rsp)
180028fd4:	33 d2                	xor    %edx,%edx
180028fd6:	e8 e9 fe ff ff       	call   0x180028ec4
180028fdb:	8b d8                	mov    %eax,%ebx
180028fdd:	85 c0                	test   %eax,%eax
180028fdf:	78 63                	js     0x180029044
180028fe1:	45 33 c0             	xor    %r8d,%r8d
180028fe4:	4c 8d 4d 48          	lea    0x48(%rbp),%r9
180028fe8:	48 8b ce             	mov    %rsi,%rcx
180028feb:	41 8d 50 01          	lea    0x1(%r8),%edx
180028fef:	e8 1c e2 ff ff       	call   0x180027210
180028ff4:	8b d8                	mov    %eax,%ebx
180028ff6:	85 c0                	test   %eax,%eax
180028ff8:	78 4a                	js     0x180029044
180028ffa:	8b 4d 48             	mov    0x48(%rbp),%ecx
180028ffd:	48 8d 55 30          	lea    0x30(%rbp),%rdx
180029001:	e8 ba de ff ff       	call   0x180026ec0
180029006:	8b d8                	mov    %eax,%ebx
180029008:	85 c0                	test   %eax,%eax
18002900a:	78 38                	js     0x180029044
18002900c:	48 8b 4d 30          	mov    0x30(%rbp),%rcx
180029010:	e8 d3 4b 00 00       	call   0x18002dbe8
180029015:	48 8b f0             	mov    %rax,%rsi
180029018:	48 85 c0             	test   %rax,%rax
18002901b:	74 18                	je     0x180029035
18002901d:	45 33 c9             	xor    %r9d,%r9d
180029020:	44 0f b7 c7          	movzwl %di,%r8d
180029024:	41 8b d7             	mov    %r15d,%edx
180029027:	48 8b c8             	mov    %rax,%rcx
18002902a:	e8 85 16 00 00       	call   0x18002a6b4
18002902f:	8b d8                	mov    %eax,%ebx
180029031:	85 c0                	test   %eax,%eax
180029033:	78 0f                	js     0x180029044
180029035:	48 8b 45 50          	mov    0x50(%rbp),%rax
180029039:	48 85 c0             	test   %rax,%rax
18002903c:	74 03                	je     0x180029041
18002903e:	48 89 30             	mov    %rsi,(%rax)
180029041:	41 8b dc             	mov    %r12d,%ebx
180029044:	8b 4d 48             	mov    0x48(%rbp),%ecx
180029047:	83 f9 ff             	cmp    $0xffffffff,%ecx
18002904a:	74 05                	je     0x180029051
18002904c:	e8 67 d9 ff ff       	call   0x1800269b8
180029051:	83 3d e4 be 17 00 01 	cmpl   $0x1,0x17bee4(%rip)        # 0x1801a4f3c
180029058:	8b 05 da be 17 00    	mov    0x17beda(%rip),%eax        # 0x1801a4f38
18002905e:	41 0f 44 c4          	cmove  %r12d,%eax
180029062:	ff 0d d4 be 17 00    	decl   0x17bed4(%rip)        # 0x1801a4f3c
180029068:	89 05 ca be 17 00    	mov    %eax,0x17beca(%rip)        # 0x1801a4f38
18002906e:	4d 85 f6             	test   %r14,%r14
180029071:	74 08                	je     0x18002907b
180029073:	49 8b ce             	mov    %r14,%rcx
180029076:	e8 81 0f 07 00       	call   0x180099ffc
18002907b:	48 8b 74 24 70       	mov    0x70(%rsp),%rsi
180029080:	8b c3                	mov    %ebx,%eax
180029082:	48 8b 5c 24 68       	mov    0x68(%rsp),%rbx
180029087:	48 83 c4 30          	add    $0x30,%rsp
18002908b:	41 5f                	pop    %r15
18002908d:	41 5e                	pop    %r14
18002908f:	41 5c                	pop    %r12
180029091:	5f                   	pop    %rdi
180029092:	5d                   	pop    %rbp
180029093:	c3                   	ret
180029094:	cc                   	int3
180029095:	cc                   	int3
180029096:	cc                   	int3
180029097:	cc                   	int3
180029098:	48 8b c4             	mov    %rsp,%rax
18002909b:	48 89 58 10          	mov    %rbx,0x10(%rax)
18002909f:	48 89 68 18          	mov    %rbp,0x18(%rax)
1800290a3:	56                   	push   %rsi
1800290a4:	57                   	push   %rdi
1800290a5:	41 56                	push   %r14
1800290a7:	48 83 ec 20          	sub    $0x20,%rsp
1800290ab:	48 8b 0d 6e be 17 00 	mov    0x17be6e(%rip),%rcx        # 0x1801a4f20
1800290b2:	33 ff                	xor    %edi,%edi
1800290b4:	33 db                	xor    %ebx,%ebx
1800290b6:	48 89 78 08          	mov    %rdi,0x8(%rax)
1800290ba:	48 85 c9             	test   %rcx,%rcx
1800290bd:	0f 84 c0 00 00 00    	je     0x180029183
1800290c3:	f6 05 f6 b8 17 00 04 	testb  $0x4,0x17b8f6(%rip)        # 0x1801a49c0
1800290ca:	74 28                	je     0x1800290f4
1800290cc:	48 8b 0d 05 b9 17 00 	mov    0x17b905(%rip),%rcx        # 0x1801a49d8
1800290d3:	4c 8d 40 08          	lea    0x8(%rax),%r8
1800290d7:	45 33 c9             	xor    %r9d,%r9d
1800290da:	ba 01 00 00 21       	mov    $0x21000001,%edx
1800290df:	e8 84 35 05 00       	call   0x18007c668
1800290e4:	48 8b 0d 35 be 17 00 	mov    0x17be35(%rip),%rcx        # 0x1801a4f20
1800290eb:	8b d8                	mov    %eax,%ebx
1800290ed:	48 8b 7c 24 40       	mov    0x40(%rsp),%rdi
1800290f2:	eb 05                	jmp    0x1800290f9
1800290f4:	bb bb 00 00 c0       	mov    $0xc00000bb,%ebx
1800290f9:	85 db                	test   %ebx,%ebx
1800290fb:	78 79                	js     0x180029176
1800290fd:	45 33 c0             	xor    %r8d,%r8d
180029100:	33 d2                	xor    %edx,%edx
180029102:	e8 85 57 08 00       	call   0x1800ae88c
180029107:	b9 00 00 00 80       	mov    $0x80000000,%ecx
18002910c:	8b d8                	mov    %eax,%ebx
18002910e:	03 c1                	add    %ecx,%eax
180029110:	85 c1                	test   %eax,%ecx
180029112:	75 08                	jne    0x18002911c
180029114:	81 fb 25 02 00 c0    	cmp    $0xc0000225,%ebx
18002911a:	75 5a                	jne    0x180029176
18002911c:	e8 ff 3d 00 00       	call   0x18002cf20
180029121:	48 8b 35 38 bd 17 00 	mov    0x17bd38(%rip),%rsi        # 0x1801a4e60
180029128:	4c 8d 35 31 bd 17 00 	lea    0x17bd31(%rip),%r14        # 0x1801a4e60
18002912f:	33 db                	xor    %ebx,%ebx
180029131:	49 3b f6             	cmp    %r14,%rsi
180029134:	74 40                	je     0x180029176
180029136:	48 8b 6e 10          	mov    0x10(%rsi),%rbp
18002913a:	48 8b d7             	mov    %rdi,%rdx
18002913d:	48 8b 8d 88 00 00 00 	mov    0x88(%rbp),%rcx
180029144:	e8 27 df ff ff       	call   0x180027070
180029149:	84 c0                	test   %al,%al
18002914b:	74 1f                	je     0x18002916c
18002914d:	48 8b 8d 80 00 00 00 	mov    0x80(%rbp),%rcx
180029154:	45 33 c0             	xor    %r8d,%r8d
180029157:	45 33 c9             	xor    %r9d,%r9d
18002915a:	41 8d 50 01          	lea    0x1(%r8),%edx
18002915e:	e8 51 15 00 00       	call   0x18002a6b4
180029163:	8b d8                	mov    %eax,%ebx
180029165:	3d 00 00 21 c0       	cmp    $0xc0210000,%eax
18002916a:	74 05                	je     0x180029171
18002916c:	48 8b 36             	mov    (%rsi),%rsi
18002916f:	eb c0                	jmp    0x180029131
180029171:	bb 53 04 00 c0       	mov    $0xc0000453,%ebx
180029176:	48 85 ff             	test   %rdi,%rdi
180029179:	74 08                	je     0x180029183
18002917b:	48 8b cf             	mov    %rdi,%rcx
18002917e:	e8 79 0e 07 00       	call   0x180099ffc
180029183:	48 8b 6c 24 50       	mov    0x50(%rsp),%rbp
180029188:	8b c3                	mov    %ebx,%eax
18002918a:	48 8b 5c 24 48       	mov    0x48(%rsp),%rbx
18002918f:	48 83 c4 20          	add    $0x20,%rsp
180029193:	41 5e                	pop    %r14
180029195:	5f                   	pop    %rdi
180029196:	5e                   	pop    %rsi
180029197:	c3                   	ret
180029198:	cc                   	int3
180029199:	cc                   	int3
18002919a:	cc                   	int3
18002919b:	cc                   	int3
18002919c:	40 53                	rex push %rbx
18002919e:	48 83 ec 20          	sub    $0x20,%rsp
1800291a2:	48 8b da             	mov    %rdx,%rbx
1800291a5:	e8 a6 0c 07 00       	call   0x180099e50
1800291aa:	48 89 03             	mov    %rax,(%rbx)
1800291ad:	48 f7 d8             	neg    %rax
1800291b0:	1b c0                	sbb    %eax,%eax
1800291b2:	f7 d0                	not    %eax
1800291b4:	25 17 00 00 c0       	and    $0xc0000017,%eax
1800291b9:	48 83 c4 20          	add    $0x20,%rsp
1800291bd:	5b                   	pop    %rbx
1800291be:	c3                   	ret
1800291bf:	cc                   	int3
1800291c0:	48 83 ec 28          	sub    $0x28,%rsp
1800291c4:	e8 33 0e 07 00       	call   0x180099ffc
1800291c9:	33 c0                	xor    %eax,%eax
1800291cb:	48 83 c4 28          	add    $0x28,%rsp
1800291cf:	c3                   	ret
1800291d0:	cc                   	int3
1800291d1:	cc                   	int3
1800291d2:	cc                   	int3
1800291d3:	cc                   	int3
1800291d4:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1800291d9:	55                   	push   %rbp
1800291da:	56                   	push   %rsi
1800291db:	57                   	push   %rdi
1800291dc:	41 54                	push   %r12
1800291de:	41 55                	push   %r13
1800291e0:	41 56                	push   %r14
1800291e2:	41 57                	push   %r15
1800291e4:	48 8d ac 24 60 fe ff 	lea    -0x1a0(%rsp),%rbp
1800291eb:	ff
1800291ec:	48 81 ec a0 02 00 00 	sub    $0x2a0,%rsp
1800291f3:	83 8d f8 01 00 00 ff 	orl    $0xffffffff,0x1f8(%rbp)
1800291fa:	33 c0                	xor    %eax,%eax
1800291fc:	21 85 f0 01 00 00    	and    %eax,0x1f0(%rbp)
180029202:	33 f6                	xor    %esi,%esi
180029204:	48 21 44 24 30       	and    %rax,0x30(%rsp)
180029209:	45 33 ff             	xor    %r15d,%r15d
18002920c:	21 85 e8 01 00 00    	and    %eax,0x1e8(%rbp)
180029212:	33 ff                	xor    %edi,%edi
180029214:	89 44 24 68          	mov    %eax,0x68(%rsp)
180029218:	45 33 e4             	xor    %r12d,%r12d
18002921b:	83 3d 7e a5 17 00 02 	cmpl   $0x2,0x17a57e(%rip)        # 0x1801a37a0
180029222:	48 8d 44 24 48       	lea    0x48(%rsp),%rax
180029227:	48 89 44 24 50       	mov    %rax,0x50(%rsp)
18002922c:	0f 57 c0             	xorps  %xmm0,%xmm0
18002922f:	48 8d 44 24 48       	lea    0x48(%rsp),%rax
180029234:	c7 44 24 38 56 c2 7c 	movl   $0xfa7cc256,0x38(%rsp)