100401c9e:	49 89 c7             	mov    %rax,%r15
100401ca1:	48 85 c0             	test   %rax,%rax
100401ca4:	74 97                	je     100401c3d <.text+0xc3d>
100401ca6:	48 89 c1             	mov    %rax,%rcx
100401ca9:	48 83 c3 08          	add    $0x8,%rbx
100401cad:	e8 26 3f 00 00       	call   100405bd8 <.text+0x4bd8>
100401cb2:	4c 89 f9             	mov    %r15,%rcx
100401cb5:	09 f8                	or     %edi,%eax
100401cb7:	89 c2                	mov    %eax,%edx
100401cb9:	e8 0a 3f 00 00       	call   100405bc8 <.text+0x4bc8>
100401cbe:	4c 8b 3b             	mov    (%rbx),%r15
100401cc1:	4d 85 ff             	test   %r15,%r15
100401cc4:	75 84                	jne    100401c4a <.text+0xc4a>
100401cc6:	48 89 e9             	mov    %rbp,%rcx
100401cc9:	e8 d2 31 00 00       	call   100404ea0 <.text+0x3ea0>
100401cce:	45 85 f6             	test   %r14d,%r14d
100401cd1:	75 73                	jne    100401d46 <.text+0xd46>
100401cd3:	48 83 c4 38          	add    $0x38,%rsp
100401cd7:	5b                   	pop    %rbx
100401cd8:	5e                   	pop    %rsi
100401cd9:	5f                   	pop    %rdi
100401cda:	5d                   	pop    %rbp
100401cdb:	41 5c                	pop    %r12
100401cdd:	41 5d                	pop    %r13
100401cdf:	41 5e                	pop    %r14
100401ce1:	41 5f                	pop    %r15
100401ce3:	c3                   	ret
100401ce4:	80 79 01 00          	cmpb   $0x0,0x1(%rcx)
100401ce8:	0f 85 0c ff ff ff    	jne    100401bfa <.text+0xbfa>
100401cee:	31 c9                	xor    %ecx,%ecx
100401cf0:	48 8d 5c 24 28       	lea    0x28(%rsp),%rbx
100401cf5:	e8 8e 3e 00 00       	call   100405b88 <.text+0x4b88>
100401cfa:	49 89 c4             	mov    %rax,%r12
100401cfd:	48 85 c0             	test   %rax,%rax
100401d00:	75 27                	jne    100401d29 <.text+0xd29>
100401d02:	e9 26 01 00 00       	jmp    100401e2d <.text+0xe2d>
100401d07:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
100401d0e:	00 00
100401d10:	48 8b 6c 24 28       	mov    0x28(%rsp),%rbp
100401d15:	48 89 e9             	mov    %rbp,%rcx
100401d18:	e8 bb 3e 00 00       	call   100405bd8 <.text+0x4bd8>
100401d1d:	48 89 e9             	mov    %rbp,%rcx
100401d20:	09 f8                	or     %edi,%eax
100401d22:	89 c2                	mov    %eax,%edx
100401d24:	e8 9f 3e 00 00       	call   100405bc8 <.text+0x4bc8>
100401d29:	48 8b 4e 10          	mov    0x10(%rsi),%rcx
100401d2d:	49 89 d8             	mov    %rbx,%r8
100401d30:	4c 89 e2             	mov    %r12,%rdx
100401d33:	e8 c8 3d 00 00       	call   100405b00 <.text+0x4b00>
100401d38:	85 c0                	test   %eax,%eax
100401d3a:	74 d4                	je     100401d10 <.text+0xd10>
100401d3c:	4c 89 e1             	mov    %r12,%rcx
100401d3f:	e8 74 3e 00 00       	call   100405bb8 <.text+0x4bb8>
100401d44:	eb 8d                	jmp    100401cd3 <.text+0xcd3>
100401d46:	31 c9                	xor    %ecx,%ecx
100401d48:	48 8d 5c 24 28       	lea    0x28(%rsp),%rbx
100401d4d:	e8 36 3e 00 00       	call   100405b88 <.text+0x4b88>
100401d52:	48 89 c5             	mov    %rax,%rbp
100401d55:	48 85 c0             	test   %rax,%rax
100401d58:	75 19                	jne    100401d73 <.text+0xd73>
100401d5a:	e9 d8 00 00 00       	jmp    100401e37 <.text+0xe37>
100401d5f:	90                   	nop
100401d60:	48 8b 4c 24 28       	mov    0x28(%rsp),%rcx
100401d65:	e8 66 3e 00 00       	call   100405bd0 <.text+0x4bd0>
100401d6a:	48 85 c0             	test   %rax,%rax
100401d6d:	0f 84 8d 00 00 00    	je     100401e00 <.text+0xe00>
100401d73:	48 8b 4e 10          	mov    0x10(%rsi),%rcx
100401d77:	49 89 d8             	mov    %rbx,%r8
100401d7a:	48 89 ea             	mov    %rbp,%rdx
100401d7d:	e8 7e 3d 00 00       	call   100405b00 <.text+0x4b00>
100401d82:	85 c0                	test   %eax,%eax
100401d84:	74 da                	je     100401d60 <.text+0xd60>
100401d86:	48 89 e9             	mov    %rbp,%rcx
100401d89:	e8 2a 3e 00 00       	call   100405bb8 <.text+0x4bb8>
100401d8e:	e9 40 ff ff ff       	jmp    100401cd3 <.text+0xcd3>
100401d93:	8b 54 24 20          	mov    0x20(%rsp),%edx
100401d97:	3b 54 24 24          	cmp    0x24(%rsp),%edx
100401d9b:	7e 50                	jle    100401ded <.text+0xded>
100401d9d:	e9 9b fe ff ff       	jmp    100401c3d <.text+0xc3d>
100401da2:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
100401da8:	48 8b 4e 10          	mov    0x10(%rsi),%rcx
100401dac:	83 ea 01             	sub    $0x1,%edx
100401daf:	48 63 d2             	movslq %edx,%rdx
100401db2:	e8 89 3d 00 00       	call   100405b40 <.text+0x4b40>
100401db7:	49 89 c7             	mov    %rax,%r15
100401dba:	4c 89 7c 24 28       	mov    %r15,0x28(%rsp)
100401dbf:	4d 85 ff             	test   %r15,%r15
100401dc2:	74 14                	je     100401dd8 <.text+0xdd8>
100401dc4:	4c 89 f9             	mov    %r15,%rcx
100401dc7:	e8 0c 3e 00 00       	call   100405bd8 <.text+0x4bd8>
100401dcc:	4c 89 f9             	mov    %r15,%rcx
100401dcf:	09 f8                	or     %edi,%eax
100401dd1:	89 c2                	mov    %eax,%edx
100401dd3:	e8 f0 3d 00 00       	call   100405bc8 <.text+0x4bc8>
100401dd8:	8b 44 24 20          	mov    0x20(%rsp),%eax
100401ddc:	8d 50 01             	lea    0x1(%rax),%edx
100401ddf:	89 54 24 20          	mov    %edx,0x20(%rsp)
100401de3:	3b 54 24 24          	cmp    0x24(%rsp),%edx
100401de7:	0f 8f 50 fe ff ff    	jg     100401c3d <.text+0xc3d>
100401ded:	85 d2                	test   %edx,%edx
100401def:	79 b7                	jns    100401da8 <.text+0xda8>
100401df1:	f7 d2                	not    %edx
100401df3:	48 89 f1             	mov    %rsi,%rcx
100401df6:	e8 d5 f4 ff ff       	call   1004012d0 <.text+0x2d0>
100401dfb:	49 89 c7             	mov    %rax,%r15
100401dfe:	eb ba                	jmp    100401dba <.text+0xdba>
100401e00:	48 8b 4c 24 28       	mov    0x28(%rsp),%rcx
100401e05:	89 fa                	mov    %edi,%edx
100401e07:	e8 74 f6 ff ff       	call   100401480 <.text+0x480>
100401e0c:	e9 62 ff ff ff       	jmp    100401d73 <.text+0xd73>
100401e11:	31 c9                	xor    %ecx,%ecx
100401e13:	48 83 c4 38          	add    $0x38,%rsp
100401e17:	5b                   	pop    %rbx
100401e18:	5e                   	pop    %rsi
100401e19:	5f                   	pop    %rdi
100401e1a:	5d                   	pop    %rbp
100401e1b:	41 5c                	pop    %r12
100401e1d:	41 5d                	pop    %r13
100401e1f:	41 5e                	pop    %r14
100401e21:	41 5f                	pop    %r15
100401e23:	e9 78 30 00 00       	jmp    100404ea0 <.text+0x3ea0>
100401e28:	48 89 c1             	mov    %rax,%rcx
100401e2b:	eb e6                	jmp    100401e13 <.text+0xe13>
100401e2d:	b9 57 01 00 00       	mov    $0x157,%ecx
100401e32:	e8 79 f4 ff ff       	call   1004012b0 <.text+0x2b0>
100401e37:	b9 84 01 00 00       	mov    $0x184,%ecx
100401e3c:	e8 6f f4 ff ff       	call   1004012b0 <.text+0x2b0>
100401e41:	90                   	nop
100401e42:	90                   	nop
100401e43:	90                   	nop
100401e44:	90                   	nop
100401e45:	90                   	nop
100401e46:	90                   	nop
100401e47:	90                   	nop
100401e48:	90                   	nop
100401e49:	90                   	nop
100401e4a:	90                   	nop
100401e4b:	90                   	nop
100401e4c:	90                   	nop
100401e4d:	90                   	nop
100401e4e:	90                   	nop
100401e4f:	90                   	nop
100401e50:	41 57                	push   %r15
100401e52:	41 56                	push   %r14
100401e54:	41 55                	push   %r13
100401e56:	41 54                	push   %r12
100401e58:	55                   	push   %rbp
100401e59:	57                   	push   %rdi
100401e5a:	56                   	push   %rsi
100401e5b:	53                   	push   %rbx
100401e5c:	48 83 ec 38          	sub    $0x38,%rsp
100401e60:	31 ed                	xor    %ebp,%ebp
100401e62:	48 c7 44 24 28 00 00 	movq   $0x0,0x28(%rsp)
100401e69:	00 00
100401e6b:	48 89 cb             	mov    %rcx,%rbx
100401e6e:	48 85 c9             	test   %rcx,%rcx
100401e71:	0f 84 a0 00 00 00    	je     100401f17 <.text+0xf17>
100401e77:	80 39 00             	cmpb   $0x0,(%rcx)
100401e7a:	0f 95 c0             	setne  %al
100401e7d:	48 85 d2             	test   %rdx,%rdx
100401e80:	74 08                	je     100401e8a <.text+0xe8a>
100401e82:	84 c0                	test   %al,%al
100401e84:	0f 85 16 01 00 00    	jne    100401fa0 <.text+0xfa0>
100401e8a:	48 89 df             	mov    %rbx,%rdi
100401e8d:	31 ed                	xor    %ebp,%ebp
100401e8f:	4c 8d 6c 24 28       	lea    0x28(%rsp),%r13
100401e94:	4c 8d 64 24 26       	lea    0x26(%rsp),%r12
100401e99:	41 be 01 00 00 00    	mov    $0x1,%r14d
100401e9f:	84 c0                	test   %al,%al
100401ea1:	75 22                	jne    100401ec5 <.text+0xec5>
100401ea3:	eb 72                	jmp    100401f17 <.text+0xf17>
100401ea5:	0f 1f 00             	nopl   (%rax)
100401ea8:	0f b6 53 01          	movzbl 0x1(%rbx),%edx
100401eac:	4c 8d 43 01          	lea    0x1(%rbx),%r8
100401eb0:	80 fa 5b             	cmp    $0x5b,%dl
100401eb3:	0f 84 97 00 00 00    	je     100401f50 <.text+0xf50>
100401eb9:	4c 89 c3             	mov    %r8,%rbx
100401ebc:	48 39 df             	cmp    %rbx,%rdi
100401ebf:	72 56                	jb     100401f17 <.text+0xf17>
100401ec1:	84 d2                	test   %dl,%dl
100401ec3:	74 52                	je     100401f17 <.text+0xf17>
100401ec5:	e8 86 3d 00 00       	call   100405c50 <.text+0x4c50>
100401eca:	0f b6 13             	movzbl (%rbx),%edx
100401ecd:	f6 44 02 01 20       	testb  $0x20,0x1(%rdx,%rax,1)
100401ed2:	75 d4                	jne    100401ea8 <.text+0xea8>
100401ed4:	e8 87 3d 00 00       	call   100405c60 <.text+0x4c60>
100401ed9:	4d 89 e9             	mov    %r13,%r9
100401edc:	48 89 da             	mov    %rbx,%rdx
100401edf:	4c 89 e1             	mov    %r12,%rcx
100401ee2:	4c 63 c0             	movslq %eax,%r8
100401ee5:	e8 46 3f 00 00       	call   100405e30 <.text+0x4e30>
100401eea:	48 89 c6             	mov    %rax,%rsi
100401eed:	48 85 c0             	test   %rax,%rax
100401ef0:	74 25                	je     100401f17 <.text+0xf17>
100401ef2:	44 0f b7 7c 24 26    	movzwl 0x26(%rsp),%r15d
100401ef8:	44 89 f9             	mov    %r15d,%ecx
100401efb:	e8 00 3f 00 00       	call   100405e00 <.text+0x4e00>
100401f00:	85 c0                	test   %eax,%eax
100401f02:	75 2c                	jne    100401f30 <.text+0xf30>
100401f04:	48 83 fe fe          	cmp    $0xfffffffffffffffe,%rsi
100401f08:	49 0f 43 f6          	cmovae %r14,%rsi
100401f0c:	48 01 f3             	add    %rsi,%rbx
100401f0f:	0f b6 13             	movzbl (%rbx),%edx
100401f12:	48 39 df             	cmp    %rbx,%rdi
100401f15:	73 aa                	jae    100401ec1 <.text+0xec1>
100401f17:	48 89 e8             	mov    %rbp,%rax
100401f1a:	48 83 c4 38          	add    $0x38,%rsp
100401f1e:	5b                   	pop    %rbx
100401f1f:	5e                   	pop    %rsi
100401f20:	5f                   	pop    %rdi
100401f21:	5d                   	pop    %rbp
100401f22:	41 5c                	pop    %r12
100401f24:	41 5d                	pop    %r13
100401f26:	41 5e                	pop    %r14
100401f28:	41 5f                	pop    %r15
100401f2a:	c3                   	ret
100401f2b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
100401f30:	44 89 f9             	mov    %r15d,%ecx
100401f33:	e8 e8 40 00 00       	call   100406020 <.text+0x5020>
100401f38:	48 63 d0             	movslq %eax,%rdx
100401f3b:	48 01 ea             	add    %rbp,%rdx
100401f3e:	85 c0                	test   %eax,%eax
100401f40:	48 0f 4f ea          	cmovg  %rdx,%rbp
100401f44:	eb c6                	jmp    100401f0c <.text+0xf0c>
100401f46:	66 2e 0f 1f 84 00 00 	cs nopw 0x0(%rax,%rax,1)
100401f4d:	00 00 00
100401f50:	49 39 f8             	cmp    %rdi,%r8
100401f53:	0f 83 60 ff ff ff    	jae    100401eb9 <.text+0xeb9>
100401f59:	4c 89 c0             	mov    %r8,%rax
100401f5c:	0f 1f 40 00          	nopl   0x0(%rax)
100401f60:	0f b6 48 01          	movzbl 0x1(%rax),%ecx
100401f64:	48 83 c0 01          	add    $0x1,%rax
100401f68:	84 c9                	test   %cl,%cl
100401f6a:	0f 84 49 ff ff ff    	je     100401eb9 <.text+0xeb9>
100401f70:	48 39 f8             	cmp    %rdi,%rax
100401f73:	74 1b                	je     100401f90 <.text+0xf90>
100401f75:	80 f9 6d             	cmp    $0x6d,%cl
100401f78:	75 e6                	jne    100401f60 <.text+0xf60>
100401f7a:	0f b6 50 01          	movzbl 0x1(%rax),%edx
100401f7e:	4c 8d 40 01          	lea    0x1(%rax),%r8
100401f82:	e9 32 ff ff ff       	jmp    100401eb9 <.text+0xeb9>
100401f87:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
100401f8e:	00 00
100401f90:	80 f9 6d             	cmp    $0x6d,%cl
100401f93:	0f 85 20 ff ff ff    	jne    100401eb9 <.text+0xeb9>
100401f99:	eb df                	jmp    100401f7a <.text+0xf7a>
100401f9b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
100401fa0:	48 8d 7c 11 ff       	lea    -0x1(%rcx,%rdx,1),%rdi
100401fa5:	48 39 cf             	cmp    %rcx,%rdi
100401fa8:	0f 93 c0             	setae  %al
100401fab:	e9 dd fe ff ff       	jmp    100401e8d <.text+0xe8d>
100401fb0:	53                   	push   %rbx
100401fb1:	48 83 ec 20          	sub    $0x20,%rsp
100401fb5:	48 89 cb             	mov    %rcx,%rbx
100401fb8:	48 85 c9             	test   %rcx,%rcx
100401fbb:	74 05                	je     100401fc2 <.text+0xfc2>
100401fbd:	80 39 00             	cmpb   $0x0,(%rcx)
100401fc0:	75 0e                	jne    100401fd0 <.text+0xfd0>
100401fc2:	31 c0                	xor    %eax,%eax
100401fc4:	48 83 c4 20          	add    $0x20,%rsp
100401fc8:	5b                   	pop    %rbx
100401fc9:	c3                   	ret
100401fca:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
100401fd0:	e8 2b 3f 00 00       	call   100405f00 <.text+0x4f00>
100401fd5:	48 89 d9             	mov    %rbx,%rcx
100401fd8:	48 89 c2             	mov    %rax,%rdx
100401fdb:	48 83 c4 20          	add    $0x20,%rsp
100401fdf:	5b                   	pop    %rbx
100401fe0:	e9 6b fe ff ff       	jmp    100401e50 <.text+0xe50>
100401fe5:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
100401fec:	00 00 00 00
100401ff0:	41 57                	push   %r15
100401ff2:	41 56                	push   %r14
100401ff4:	41 55                	push   %r13
100401ff6:	41 54                	push   %r12
100401ff8:	55                   	push   %rbp
100401ff9:	57                   	push   %rdi
100401ffa:	56                   	push   %rsi
100401ffb:	53                   	push   %rbx
100401ffc:	48 83 ec 38          	sub    $0x38,%rsp
100402000:	4c 89 84 24 90 00 00 	mov    %r8,0x90(%rsp)
100402007:	00
100402008:	48 89 cb             	mov    %rcx,%rbx
10040200b:	48 c7 44 24 28 00 00 	movq   $0x0,0x28(%rsp)
100402012:	00 00
100402014:	48 85 c9             	test   %rcx,%rcx
100402017:	0f 84 63 01 00 00    	je     100402180 <.text+0x1180>
10040201d:	0f b6 01             	movzbl (%rcx),%eax
100402020:	84 c0                	test   %al,%al
100402022:	0f 95 c1             	setne  %cl
100402025:	48 85 d2             	test   %rdx,%rdx
100402028:	74 08                	je     100402032 <.text+0x1032>
10040202a:	84 c9                	test   %cl,%cl
10040202c:	0f 85 5e 01 00 00    	jne    100402190 <.text+0x1190>
100402032:	48 89 dd             	mov    %rbx,%rbp
100402035:	31 ff                	xor    %edi,%edi
100402037:	4c 8d 74 24 28       	lea    0x28(%rsp),%r14
10040203c:	4c 8d 6c 24 26       	lea    0x26(%rsp),%r13
100402041:	31 f6                	xor    %esi,%esi
100402043:	84 c9                	test   %cl,%cl
100402045:	75 22                	jne    100402069 <.text+0x1069>
100402047:	e9 94 00 00 00       	jmp    1004020e0 <.text+0x10e0>
10040204c:	0f 1f 40 00          	nopl   0x0(%rax)
100402050:	0f b6 43 01          	movzbl 0x1(%rbx),%eax
100402054:	48 83 c3 01          	add    $0x1,%rbx
100402058:	48 83 c6 04          	add    $0x4,%rsi
10040205c:	48 83 c7 04          	add    $0x4,%rdi
100402060:	48 39 dd             	cmp    %rbx,%rbp
100402063:	72 7b                	jb     1004020e0 <.text+0x10e0>
100402065:	84 c0                	test   %al,%al
100402067:	74 77                	je     1004020e0 <.text+0x10e0>
100402069:	3c 5c                	cmp    $0x5c,%al
10040206b:	75 09                	jne    100402076 <.text+0x1076>
10040206d:	48 39 eb             	cmp    %rbp,%rbx
100402070:	0f 82 9a 00 00 00    	jb     100402110 <.text+0x1110>
100402076:	e8 d5 3b 00 00       	call   100405c50 <.text+0x4c50>
10040207b:	0f b6 13             	movzbl (%rbx),%edx
10040207e:	f6 44 02 01 20       	testb  $0x20,0x1(%rdx,%rax,1)
100402083:	75 cb                	jne    100402050 <.text+0x1050>
100402085:	e8 d6 3b 00 00       	call   100405c60 <.text+0x4c60>
10040208a:	4d 89 f1             	mov    %r14,%r9
10040208d:	48 89 da             	mov    %rbx,%rdx
100402090:	4c 89 e9             	mov    %r13,%rcx
100402093:	4c 63 c0             	movslq %eax,%r8
100402096:	e8 95 3d 00 00       	call   100405e30 <.text+0x4e30>
10040209b:	49 89 c7             	mov    %rax,%r15
10040209e:	48 85 c0             	test   %rax,%rax
1004020a1:	74 3d                	je     1004020e0 <.text+0x10e0>
1004020a3:	48 83 f8 fd          	cmp    $0xfffffffffffffffd,%rax
1004020a7:	77 7f                	ja     100402128 <.text+0x1128>
1004020a9:	44 0f b7 64 24 26    	movzwl 0x26(%rsp),%r12d
1004020af:	44 89 e1             	mov    %r12d,%ecx
1004020b2:	e8 49 3d 00 00       	call   100405e00 <.text+0x4e00>
1004020b7:	85 c0                	test   %eax,%eax
1004020b9:	0f 85 91 00 00 00    	jne    100402150 <.text+0x1150>
1004020bf:	4a 8d 04 bd 00 00 00 	lea    0x0(,%r15,4),%rax
1004020c6:	00
1004020c7:	48 01 c6             	add    %rax,%rsi
1004020ca:	48 01 c7             	add    %rax,%rdi
1004020cd:	4c 01 fb             	add    %r15,%rbx
1004020d0:	0f b6 03             	movzbl (%rbx),%eax
1004020d3:	48 39 dd             	cmp    %rbx,%rbp
1004020d6:	73 8d                	jae    100402065 <.text+0x1065>
1004020d8:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
1004020df:	00
1004020e0:	48 83 bc 24 90 00 00 	cmpq   $0x0,0x90(%rsp)
1004020e7:	00 00
1004020e9:	74 0b                	je     1004020f6 <.text+0x10f6>
1004020eb:	48 8b 84 24 90 00 00 	mov    0x90(%rsp),%rax
1004020f2:	00