140057e6b:	48 89 f1             	mov    %rsi,%rcx
140057e6e:	41 b8 04 00 00 00    	mov    $0x4,%r8d
140057e74:	0f c8                	bswap  %eax
140057e76:	89 44 24 24          	mov    %eax,0x24(%rsp)
140057e7a:	e8 01 57 0d 00       	call   0x14012d580
140057e7f:	48 85 db             	test   %rbx,%rbx
140057e82:	74 51                	je     0x140057ed5
140057e84:	8b 44 24 70          	mov    0x70(%rsp),%eax
140057e88:	48 8b 35 71 15 1e 00 	mov    0x1e1571(%rip),%rsi        # 0x140239400
140057e8f:	48 8d 54 24 70       	lea    0x70(%rsp),%rdx
140057e94:	48 89 d9             	mov    %rbx,%rcx
140057e97:	41 b8 04 00 00 00    	mov    $0x4,%r8d
140057e9d:	0f c8                	bswap  %eax
140057e9f:	89 44 24 70          	mov    %eax,0x70(%rsp)
140057ea3:	8b 44 24 78          	mov    0x78(%rsp),%eax
140057ea7:	0f c8                	bswap  %eax
140057ea9:	89 44 24 78          	mov    %eax,0x78(%rsp)
140057ead:	48 8b 06             	mov    (%rsi),%rax
140057eb0:	48 8b 80 90 01 00 00 	mov    0x190(%rax),%rax
140057eb7:	ff 50 38             	call   *0x38(%rax)
140057eba:	48 8b 06             	mov    (%rsi),%rax
140057ebd:	48 8d 54 24 78       	lea    0x78(%rsp),%rdx
140057ec2:	48 89 d9             	mov    %rbx,%rcx
140057ec5:	41 b8 04 00 00 00    	mov    $0x4,%r8d
140057ecb:	48 8b 80 90 01 00 00 	mov    0x190(%rax),%rax
140057ed2:	ff 50 38             	call   *0x38(%rax)
140057ed5:	48 8b 44 24 28       	mov    0x28(%rsp),%rax
140057eda:	48 2b 07             	sub    (%rdi),%rax
140057edd:	75 09                	jne    0x140057ee8
140057edf:	48 83 c4 38          	add    $0x38,%rsp
140057ee3:	5b                   	pop    %rbx
140057ee4:	5e                   	pop    %rsi
140057ee5:	5f                   	pop    %rdi
140057ee6:	5d                   	pop    %rbp
140057ee7:	c3                   	ret
140057ee8:	e8 83 c9 18 00       	call   0x1401e4870
140057eed:	90                   	nop
140057eee:	66 90                	xchg   %ax,%ax
140057ef0:	41 57                	push   %r15
140057ef2:	41 56                	push   %r14
140057ef4:	41 55                	push   %r13
140057ef6:	41 54                	push   %r12
140057ef8:	55                   	push   %rbp
140057ef9:	57                   	push   %rdi
140057efa:	56                   	push   %rsi
140057efb:	53                   	push   %rbx
140057efc:	48 81 ec b8 09 00 00 	sub    $0x9b8,%rsp
140057f03:	48 8b 3d e6 0b 1e 00 	mov    0x1e0be6(%rip),%rdi        # 0x140238af0
140057f0a:	4c 8b 2f             	mov    (%rdi),%r13
140057f0d:	4c 89 ac 24 a8 09 00 	mov    %r13,0x9a8(%rsp)
140057f14:	00
140057f15:	4c 8b 2d e4 14 1e 00 	mov    0x1e14e4(%rip),%r13        # 0x140239400
140057f1c:	48 89 d3             	mov    %rdx,%rbx
140057f1f:	48 89 ce             	mov    %rcx,%rsi
140057f22:	49 8b 45 00          	mov    0x0(%r13),%rax
140057f26:	48 8b 90 90 01 00 00 	mov    0x190(%rax),%rdx
140057f2d:	48 8b 42 10          	mov    0x10(%rdx),%rax
140057f31:	48 8d 48 2c          	lea    0x2c(%rax),%rcx
140057f35:	48 39 cb             	cmp    %rcx,%rbx
140057f38:	72 31                	jb     0x140057f6b
140057f3a:	48 89 d9             	mov    %rbx,%rcx
140057f3d:	48 29 c1             	sub    %rax,%rcx
140057f40:	48 8d 6c 0e e0       	lea    -0x20(%rsi,%rcx,1),%rbp
140057f45:	0f be 45 00          	movsbl 0x0(%rbp),%eax
140057f49:	0f be 4d 01          	movsbl 0x1(%rbp),%ecx
140057f4d:	c1 e0 18             	shl    $0x18,%eax
140057f50:	c1 e1 10             	shl    $0x10,%ecx
140057f53:	09 c8                	or     %ecx,%eax
140057f55:	0f be 4d 03          	movsbl 0x3(%rbp),%ecx
140057f59:	09 c8                	or     %ecx,%eax
140057f5b:	0f be 4d 02          	movsbl 0x2(%rbp),%ecx
140057f5f:	c1 e1 08             	shl    $0x8,%ecx
140057f62:	09 c8                	or     %ecx,%eax
140057f64:	3d 45 49 4f 45       	cmp    $0x454f4945,%eax
140057f69:	74 35                	je     0x140057fa0
140057f6b:	45 31 ff             	xor    %r15d,%r15d
140057f6e:	48 8b 84 24 a8 09 00 	mov    0x9a8(%rsp),%rax
140057f75:	00
140057f76:	48 2b 07             	sub    (%rdi),%rax
140057f79:	0f 85 5b 01 00 00    	jne    0x1400580da
140057f7f:	4c 89 f8             	mov    %r15,%rax
140057f82:	48 81 c4 b8 09 00 00 	add    $0x9b8,%rsp
140057f89:	5b                   	pop    %rbx
140057f8a:	5e                   	pop    %rsi
140057f8b:	5f                   	pop    %rdi
140057f8c:	5d                   	pop    %rbp
140057f8d:	41 5c                	pop    %r12
140057f8f:	41 5d                	pop    %r13
140057f91:	41 5e                	pop    %r14
140057f93:	41 5f                	pop    %r15
140057f95:	c3                   	ret
140057f96:	66 2e 0f 1f 84 00 00 	cs nopw 0x0(%rax,%rax,1)
140057f9d:	00 00 00
140057fa0:	81 7d 04 00 00 00 18 	cmpl   $0x18000000,0x4(%rbp)
140057fa7:	75 c2                	jne    0x140057f6b
140057fa9:	44 8b 7d 08          	mov    0x8(%rbp),%r15d
140057fad:	48 8d 4e 0c          	lea    0xc(%rsi),%rcx
140057fb1:	41 0f cf             	bswap  %r15d
140057fb4:	45 89 ff             	mov    %r15d,%r15d
140057fb7:	4a 8d 04 3e          	lea    (%rsi,%r15,1),%rax
140057fbb:	48 39 c8             	cmp    %rcx,%rax
140057fbe:	72 ab                	jb     0x140057f6b
140057fc0:	48 39 e8             	cmp    %rbp,%rax
140057fc3:	73 a6                	jae    0x140057f6b
140057fc5:	4c 8d 74 24 20       	lea    0x20(%rsp),%r14
140057fca:	4d 89 fc             	mov    %r15,%r12
140057fcd:	4c 89 f1             	mov    %r14,%rcx
140057fd0:	ff 52 28             	call   *0x28(%rdx)
140057fd3:	49 8b 45 00          	mov    0x0(%r13),%rax
140057fd7:	4c 8b 88 90 01 00 00 	mov    0x190(%rax),%r9
140057fde:	48 89 d8             	mov    %rbx,%rax
140057fe1:	49 2b 41 10          	sub    0x10(%r9),%rax
140057fe5:	48 83 e8 20          	sub    $0x20,%rax
140057fe9:	49 39 c7             	cmp    %rax,%r15
140057fec:	72 2d                	jb     0x14005801b
140057fee:	eb 50                	jmp    0x140058040
140057ff0:	48 01 f2             	add    %rsi,%rdx
140057ff3:	41 b8 08 00 00 00    	mov    $0x8,%r8d
140057ff9:	4c 89 f1             	mov    %r14,%rcx
140057ffc:	41 ff 51 38          	call   *0x38(%r9)
140058000:	49 8b 45 00          	mov    0x0(%r13),%rax
140058004:	4c 8b 88 90 01 00 00 	mov    0x190(%rax),%r9
14005800b:	48 89 d8             	mov    %rbx,%rax
14005800e:	49 2b 41 10          	sub    0x10(%r9),%rax
140058012:	48 83 e8 20          	sub    $0x20,%rax
140058016:	49 39 c4             	cmp    %rax,%r12
140058019:	73 25                	jae    0x140058040
14005801b:	42 8b 44 26 04       	mov    0x4(%rsi,%r12,1),%eax
140058020:	4c 89 e2             	mov    %r12,%rdx
140058023:	0f c8                	bswap  %eax
140058025:	89 c0                	mov    %eax,%eax
140058027:	4d 8d 64 04 08       	lea    0x8(%r12,%rax,1),%r12
14005802c:	49 39 d4             	cmp    %rdx,%r12
14005802f:	73 bf                	jae    0x140057ff0
140058031:	e9 35 ff ff ff       	jmp    0x140057f6b
140058036:	66 2e 0f 1f 84 00 00 	cs nopw 0x0(%rax,%rax,1)
14005803d:	00 00 00
140058040:	48 8d 8c 24 80 09 00 	lea    0x980(%rsp),%rcx
140058047:	00
140058048:	4c 89 f2             	mov    %r14,%rdx
14005804b:	48 8d 75 0c          	lea    0xc(%rbp),%rsi
14005804f:	41 ff 51 40          	call   *0x40(%r9)
140058053:	49 8b 45 00          	mov    0x0(%r13),%rax
140058057:	48 8b 94 24 88 09 00 	mov    0x988(%rsp),%rdx
14005805e:	00
14005805f:	48 33 55 14          	xor    0x14(%rbp),%rdx
140058063:	48 8b 80 90 01 00 00 	mov    0x190(%rax),%rax
14005806a:	48 8b 48 10          	mov    0x10(%rax),%rcx
14005806e:	48 8b 84 24 80 09 00 	mov    0x980(%rsp),%rax
140058075:	00
140058076:	48 33 45 0c          	xor    0xc(%rbp),%rax
14005807a:	48 83 f9 20          	cmp    $0x20,%rcx
14005807e:	74 2e                	je     0x1400580ae
140058080:	48 09 d0             	or     %rdx,%rax
140058083:	0f 85 e2 fe ff ff    	jne    0x140057f6b
140058089:	8b 46 10             	mov    0x10(%rsi),%eax
14005808c:	39 84 24 90 09 00 00 	cmp    %eax,0x990(%rsp)
140058093:	0f 85 d2 fe ff ff    	jne    0x140057f6b
140058099:	48 29 cb             	sub    %rcx,%rbx
14005809c:	48 83 eb 20          	sub    $0x20,%rbx
1400580a0:	4c 39 e3             	cmp    %r12,%rbx
1400580a3:	0f 85 c2 fe ff ff    	jne    0x140057f6b
1400580a9:	e9 c0 fe ff ff       	jmp    0x140057f6e
1400580ae:	48 09 d0             	or     %rdx,%rax
1400580b1:	0f 85 b4 fe ff ff    	jne    0x140057f6b
1400580b7:	48 8b 84 24 90 09 00 	mov    0x990(%rsp),%rax
1400580be:	00
1400580bf:	48 8b 94 24 98 09 00 	mov    0x998(%rsp),%rdx
1400580c6:	00
1400580c7:	48 33 46 10          	xor    0x10(%rsi),%rax
1400580cb:	48 33 56 18          	xor    0x18(%rsi),%rdx
1400580cf:	48 09 d0             	or     %rdx,%rax
1400580d2:	0f 85 93 fe ff ff    	jne    0x140057f6b
1400580d8:	eb bf                	jmp    0x140058099
1400580da:	e8 91 c7 18 00       	call   0x1401e4870
1400580df:	90                   	nop
1400580e0:	41 57                	push   %r15
1400580e2:	41 56                	push   %r14
1400580e4:	41 55                	push   %r13
1400580e6:	41 54                	push   %r12
1400580e8:	55                   	push   %rbp
1400580e9:	57                   	push   %rdi
1400580ea:	56                   	push   %rsi
1400580eb:	53                   	push   %rbx
1400580ec:	48 83 ec 28          	sub    $0x28,%rsp
1400580f0:	49 89 ce             	mov    %rcx,%r14
1400580f3:	48 89 d5             	mov    %rdx,%rbp
1400580f6:	45 89 cd             	mov    %r9d,%r13d
1400580f9:	4d 63 e0             	movslq %r8d,%r12
1400580fc:	45 8b 7e 0c          	mov    0xc(%r14),%r15d
140058100:	44 89 84 24 80 00 00 	mov    %r8d,0x80(%rsp)
140058107:	00
140058108:	45 85 ff             	test   %r15d,%r15d
14005810b:	0f 8e ce 00 00 00    	jle    0x1400581df
140058111:	31 ff                	xor    %edi,%edi
140058113:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
14005811a:	00 00 00 00
14005811e:	66 90                	xchg   %ax,%ax
140058120:	44 89 fb             	mov    %r15d,%ebx
140058123:	49 8b 06             	mov    (%r14),%rax
140058126:	48 89 e9             	mov    %rbp,%rcx
140058129:	29 fb                	sub    %edi,%ebx
14005812b:	d1 fb                	sar    $1,%ebx
14005812d:	01 fb                	add    %edi,%ebx
14005812f:	48 63 d3             	movslq %ebx,%rdx
140058132:	48 8b 04 d0          	mov    (%rax,%rdx,8),%rax
140058136:	4c 89 e2             	mov    %r12,%rdx
140058139:	4c 63 48 40          	movslq 0x40(%rax),%r9
14005813d:	4c 8d 40 6c          	lea    0x6c(%rax),%r8
140058141:	8b 70 38             	mov    0x38(%rax),%esi
140058144:	e8 c7 89 06 00       	call   0x1400c0b10
140058149:	85 c0                	test   %eax,%eax
14005814b:	75 2b                	jne    0x140058178
14005814d:	c1 ee 0c             	shr    $0xc,%esi
140058150:	83 e6 03             	and    $0x3,%esi
140058153:	44 39 ee             	cmp    %r13d,%esi
140058156:	0f 8f 94 00 00 00    	jg     0x1400581f0
14005815c:	7c 1c                	jl     0x14005817a
14005815e:	89 d8                	mov    %ebx,%eax
140058160:	48 83 c4 28          	add    $0x28,%rsp
140058164:	5b                   	pop    %rbx
140058165:	5e                   	pop    %rsi
140058166:	5f                   	pop    %rdi
140058167:	5d                   	pop    %rbp
140058168:	41 5c                	pop    %r12
14005816a:	41 5d                	pop    %r13
14005816c:	41 5e                	pop    %r14
14005816e:	41 5f                	pop    %r15
140058170:	c3                   	ret
140058171:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
140058178:	78 76                	js     0x1400581f0
14005817a:	8d 7b 01             	lea    0x1(%rbx),%edi
14005817d:	41 39 ff             	cmp    %edi,%r15d
140058180:	7f 9e                	jg     0x140058120
140058182:	83 bc 24 90 00 00 00 	cmpl   $0x1,0x90(%rsp)
140058189:	01
14005818a:	75 69                	jne    0x1400581f5
14005818c:	41 8b 46 3c          	mov    0x3c(%r14),%eax
140058190:	85 c0                	test   %eax,%eax
140058192:	74 61                	je     0x1400581f5
140058194:	85 ff                	test   %edi,%edi
140058196:	7e 5d                	jle    0x1400581f5
140058198:	49 8b 16             	mov    (%r14),%rdx
14005819b:	48 63 c7             	movslq %edi,%rax
14005819e:	48 8b 54 c2 f8       	mov    -0x8(%rdx,%rax,8),%rdx
1400581a3:	81 7a 34 00 40 00 00 	cmpl   $0x4000,0x34(%rdx)
1400581aa:	75 49                	jne    0x1400581f5
1400581ac:	44 8b 42 40          	mov    0x40(%rdx),%r8d
1400581b0:	44 3b 84 24 80 00 00 	cmp    0x80(%rsp),%r8d
1400581b7:	00
1400581b8:	73 3b                	jae    0x1400581f5
1400581ba:	48 83 c2 6c          	add    $0x6c,%rdx
1400581be:	48 89 e9             	mov    %rbp,%rcx
1400581c1:	e8 da 1c 19 00       	call   0x1401e9ea0
1400581c6:	85 c0                	test   %eax,%eax
1400581c8:	75 2b                	jne    0x1400581f5
1400581ca:	4c 89 f1             	mov    %r14,%rcx
1400581cd:	e8 ee 0b 04 00       	call   0x140098dc0
1400581d2:	45 8b 7e 0c          	mov    0xc(%r14),%r15d
1400581d6:	45 85 ff             	test   %r15d,%r15d
1400581d9:	0f 8f 32 ff ff ff    	jg     0x140058111
1400581df:	bb ff ff ff ff       	mov    $0xffffffff,%ebx
1400581e4:	e9 75 ff ff ff       	jmp    0x14005815e
1400581e9:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
1400581f0:	41 89 df             	mov    %ebx,%r15d
1400581f3:	eb 88                	jmp    0x14005817d
1400581f5:	f7 d7                	not    %edi
1400581f7:	89 fb                	mov    %edi,%ebx
1400581f9:	e9 60 ff ff ff       	jmp    0x14005815e
1400581fe:	66 90                	xchg   %ax,%ax
140058200:	41 57                	push   %r15
140058202:	41 56                	push   %r14
140058204:	41 55                	push   %r13
140058206:	41 54                	push   %r12
140058208:	55                   	push   %rbp
140058209:	57                   	push   %rdi
14005820a:	56                   	push   %rsi
14005820b:	53                   	push   %rbx
14005820c:	48 83 ec 58          	sub    $0x58,%rsp
140058210:	48 8b 3d d9 08 1e 00 	mov    0x1e08d9(%rip),%rdi        # 0x140238af0
140058217:	48 8b 84 24 c0 00 00 	mov    0xc0(%rsp),%rax
14005821e:	00
14005821f:	4c 8b 37             	mov    (%rdi),%r14
140058222:	4c 89 74 24 48       	mov    %r14,0x48(%rsp)
140058227:	4c 8b 35 d2 11 1e 00 	mov    0x1e11d2(%rip),%r14        # 0x140239400
14005822e:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
140058233:	89 d5                	mov    %edx,%ebp
140058235:	48 89 cb             	mov    %rcx,%rbx
140058238:	4c 89 4c 24 20       	mov    %r9,0x20(%rsp)
14005823d:	4d 89 c7             	mov    %r8,%r15
140058240:	49 8b 06             	mov    (%r14),%rax
140058243:	48 8b 80 90 01 00 00 	mov    0x190(%rax),%rax
14005824a:	8b 40 10             	mov    0x10(%rax),%eax
14005824d:	49 8d 7c 00 28       	lea    0x28(%r8,%rax,1),%rdi
140058252:	0f b7 37             	movzwl (%rdi),%esi
140058255:	66 c1 c6 08          	rol    $0x8,%si
140058259:	89 f2                	mov    %esi,%edx
14005825b:	49 89 f4             	mov    %rsi,%r12
14005825e:	66 81 e2 ff 0f       	and    $0xfff,%dx
140058263:	41 81 e4 ff 0f 00 00 	and    $0xfff,%r12d
14005826a:	66 f7 c6 00 40       	test   $0x4000,%si
14005826f:	0f 84 cb 01 00 00    	je     0x140058440
140058275:	44 0f b7 6f 02       	movzwl 0x2(%rdi),%r13d
14005827a:	8b 37                	mov    (%rdi),%esi
14005827c:	66 41 c1 c5 08       	rol    $0x8,%r13w
140058281:	0f ce                	bswap  %esi
140058283:	c1 c6 10             	rol    $0x10,%esi
140058286:	41 c1 e5 10          	shl    $0x10,%r13d
14005828a:	41 f7 c5 00 00 ff 9f 	test   $0x9fff0000,%r13d
140058291:	0f 85 d9 02 00 00    	jne    0x140058570
140058297:	48 83 c7 04          	add    $0x4,%rdi
14005829b:	83 fd 04             	cmp    $0x4,%ebp
14005829e:	0f 85 ac 01 00 00    	jne    0x140058450
1400582a4:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
1400582a9:	89 54 24 2c          	mov    %edx,0x2c(%rsp)
1400582ad:	48 89 7c 24 40       	mov    %rdi,0x40(%rsp)
1400582b2:	e8 49 d7 06 00       	call   0x1400c5a00
1400582b7:	48 8b 4c 24 30       	mov    0x30(%rsp),%rcx
1400582bc:	8b 54 24 2c          	mov    0x2c(%rsp),%edx
1400582c0:	48 85 c9             	test   %rcx,%rcx
1400582c3:	0f 84 9f 02 00 00    	je     0x140058568
1400582c9:	44 8b 69 40          	mov    0x40(%rcx),%r13d
1400582cd:	49 39 c5             	cmp    %rax,%r13
1400582d0:	0f 82 d6 02 00 00    	jb     0x1400585ac
1400582d6:	49 29 c5             	sub    %rax,%r13
1400582d9:	48 8b 7c 24 40       	mov    0x40(%rsp),%rdi
1400582de:	66 81 fa ff 0f       	cmp    $0xfff,%dx
1400582e3:	75 1b                	jne    0x140058300
1400582e5:	48 89 f9             	mov    %rdi,%rcx
1400582e8:	e8 ab 1b 19 00       	call   0x1401e9e98
1400582ed:	4d 8d 64 05 00       	lea    0x0(%r13,%rax,1),%r12
1400582f2:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
1400582f9:	00 00 00 00
1400582fd:	0f 1f 00             	nopl   (%rax)
140058300:	48 89 d9             	mov    %rbx,%rcx
140058303:	49 8d 54 24 6d       	lea    0x6d(%r12),%rdx
140058308:	81 e6 00 f0 ff ff    	and    $0xfffff000,%esi
14005830e:	e8 0d 21 11 00       	call   0x14016a420
140058313:	49 8d 57 28          	lea    0x28(%r15),%rdx
140058317:	44 89 64 24 2c       	mov    %r12d,0x2c(%rsp)
14005831c:	c7 40 3c 01 00 00 00 	movl   $0x1,0x3c(%rax)
140058323:	48 89 c3             	mov    %rax,%rbx
140058326:	41 8b 07             	mov    (%r15),%eax
140058329:	48 8d 4b 48          	lea    0x48(%rbx),%rcx
14005832d:	0f c8                	bswap  %eax
14005832f:	89 43 10             	mov    %eax,0x10(%rbx)
140058332:	41 8b 47 08          	mov    0x8(%r15),%eax
140058336:	0f c8                	bswap  %eax
140058338:	89 43 18             	mov    %eax,0x18(%rbx)
14005833b:	41 8b 47 04          	mov    0x4(%r15),%eax