180096f78:	73 26                	jae    0x180096fa0
180096f7a:	80 3e 00             	cmpb   $0x0,(%rsi)
180096f7d:	74 39                	je     0x180096fb8
180096f7f:	0f be 0e             	movsbl (%rsi),%ecx
180096f82:	e8 c5 50 09 00       	call   0x18012c04c
180096f87:	0f be 0f             	movsbl (%rdi),%ecx
180096f8a:	8b d8                	mov    %eax,%ebx
180096f8c:	e8 bb 50 09 00       	call   0x18012c04c
180096f91:	3b c3                	cmp    %ebx,%eax
180096f93:	75 0b                	jne    0x180096fa0
180096f95:	48 ff c6             	inc    %rsi
180096f98:	48 ff c7             	inc    %rdi
180096f9b:	48 3b fd             	cmp    %rbp,%rdi
180096f9e:	72 da                	jb     0x180096f7a
180096fa0:	32 c0                	xor    %al,%al
180096fa2:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
180096fa7:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
180096fac:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
180096fb1:	48 83 c4 20          	add    $0x20,%rsp
180096fb5:	5f                   	pop    %rdi
180096fb6:	c3                   	ret
180096fb7:	cc                   	int3
180096fb8:	b0 01                	mov    $0x1,%al
180096fba:	eb e6                	jmp    0x180096fa2
180096fbc:	4c 8b c1             	mov    %rcx,%r8
180096fbf:	33 c9                	xor    %ecx,%ecx
180096fc1:	eb 20                	jmp    0x180096fe3
180096fc3:	45 0f b6 08          	movzbl (%r8),%r9d
180096fc7:	49 ff c0             	inc    %r8
180096fca:	45 84 c9             	test   %r9b,%r9b
180096fcd:	74 20                	je     0x180096fef
180096fcf:	41 8d 41 d0          	lea    -0x30(%r9),%eax
180096fd3:	3c 09                	cmp    $0x9,%al
180096fd5:	77 11                	ja     0x180096fe8
180096fd7:	48 8d 0c 89          	lea    (%rcx,%rcx,4),%rcx
180096fdb:	48 8d 49 e8          	lea    -0x18(%rcx),%rcx
180096fdf:	49 8d 0c 49          	lea    (%r9,%rcx,2),%rcx
180096fe3:	4c 3b c2             	cmp    %rdx,%r8
180096fe6:	72 db                	jb     0x180096fc3
180096fe8:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
180096fed:	c3                   	ret
180096fee:	cc                   	int3
180096fef:	48 8b c1             	mov    %rcx,%rax
180096ff2:	c3                   	ret
180096ff3:	cc                   	int3
180096ff4:	4c 8b ca             	mov    %rdx,%r9
180096ff7:	4c 8b c2             	mov    %rdx,%r8
180096ffa:	b8 cd cc cc cc       	mov    $0xcccccccd,%eax
180096fff:	f7 e1                	mul    %ecx
180097001:	c1 ea 03             	shr    $0x3,%edx
180097004:	8d 04 92             	lea    (%rdx,%rdx,4),%eax
180097007:	03 c0                	add    %eax,%eax
180097009:	2b c8                	sub    %eax,%ecx
18009700b:	49 8b c0             	mov    %r8,%rax
18009700e:	49 2b c1             	sub    %r9,%rax
180097011:	44 8b d1             	mov    %ecx,%r10d
180097014:	8b ca                	mov    %edx,%ecx
180097016:	48 83 f8 20          	cmp    $0x20,%rax
18009701a:	74 0e                	je     0x18009702a
18009701c:	41 80 c2 30          	add    $0x30,%r10b
180097020:	45 88 10             	mov    %r10b,(%r8)
180097023:	49 ff c0             	inc    %r8
180097026:	85 d2                	test   %edx,%edx
180097028:	75 d0                	jne    0x180096ffa
18009702a:	41 8b c0             	mov    %r8d,%eax
18009702d:	41 c6 00 00          	movb   $0x0,(%r8)
180097031:	41 2b c1             	sub    %r9d,%eax
180097034:	ff c0                	inc    %eax
180097036:	49 ff c8             	dec    %r8
180097039:	41 8a 09             	mov    (%r9),%cl
18009703c:	41 8a 10             	mov    (%r8),%dl
18009703f:	41 88 08             	mov    %cl,(%r8)
180097042:	49 ff c8             	dec    %r8
180097045:	41 88 11             	mov    %dl,(%r9)
180097048:	49 ff c1             	inc    %r9
18009704b:	4d 3b c8             	cmp    %r8,%r9
18009704e:	72 e9                	jb     0x180097039
180097050:	c3                   	ret
180097051:	cc                   	int3
180097052:	cc                   	int3
180097053:	cc                   	int3
180097054:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
180097059:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
18009705e:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
180097063:	57                   	push   %rdi
180097064:	48 81 ec 70 01 00 00 	sub    $0x170,%rsp
18009706b:	8b ea                	mov    %edx,%ebp
18009706d:	49 8b f9             	mov    %r9,%rdi
180097070:	48 8d 54 24 50       	lea    0x50(%rsp),%rdx
180097075:	49 8b f0             	mov    %r8,%rsi
180097078:	8b d9                	mov    %ecx,%ebx
18009707a:	e8 a9 fc f8 ff       	call   0x180026d28
18009707f:	85 c0                	test   %eax,%eax
180097081:	78 40                	js     0x1800970c3
180097083:	83 7c 24 50 04       	cmpl   $0x4,0x50(%rsp)
180097088:	75 34                	jne    0x1800970be
18009708a:	8a 84 24 c0 01 00 00 	mov    0x1c0(%rsp),%al
180097091:	4c 8b cf             	mov    %rdi,%r9
180097094:	88 44 24 40          	mov    %al,0x40(%rsp)
180097098:	4c 8b c6             	mov    %rsi,%r8
18009709b:	8b 84 24 b8 01 00 00 	mov    0x1b8(%rsp),%eax
1800970a2:	8b d5                	mov    %ebp,%edx
1800970a4:	89 44 24 38          	mov    %eax,0x38(%rsp)
1800970a8:	8b cb                	mov    %ebx,%ecx
1800970aa:	48 8b 84 24 a0 01 00 	mov    0x1a0(%rsp),%rax
1800970b1:	00
1800970b2:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
1800970b7:	e8 d0 e2 ff ff       	call   0x18009538c
1800970bc:	eb 05                	jmp    0x1800970c3
1800970be:	b8 0d 00 00 c0       	mov    $0xc000000d,%eax
1800970c3:	4c 8d 9c 24 70 01 00 	lea    0x170(%rsp),%r11
1800970ca:	00
1800970cb:	49 8b 5b 10          	mov    0x10(%r11),%rbx
1800970cf:	49 8b 6b 18          	mov    0x18(%r11),%rbp
1800970d3:	49 8b 73 20          	mov    0x20(%r11),%rsi
1800970d7:	49 8b e3             	mov    %r11,%rsp
1800970da:	5f                   	pop    %rdi
1800970db:	c3                   	ret
1800970dc:	cc                   	int3
1800970dd:	cc                   	int3
1800970de:	cc                   	int3
1800970df:	cc                   	int3
1800970e0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1800970e5:	57                   	push   %rdi
1800970e6:	48 83 ec 20          	sub    $0x20,%rsp
1800970ea:	8b fa                	mov    %edx,%edi
1800970ec:	48 8b d9             	mov    %rcx,%rbx
1800970ef:	33 d2                	xor    %edx,%edx
1800970f1:	b9 00 00 03 00       	mov    $0x30000,%ecx
1800970f6:	44 8d 42 40          	lea    0x40(%rdx),%r8d
1800970fa:	e8 81 eb 09 00       	call   0x180135c80
1800970ff:	83 24 25 20 00 03 00 	andl   $0x0,0x30020
180097106:	00
180097107:	48 8b c3             	mov    %rbx,%rax
18009710a:	48 c1 e8 10          	shr    $0x10,%rax
18009710e:	ba 00 00 03 00       	mov    $0x30000,%edx
180097113:	66 89 04 25 00 00 03 	mov    %ax,0x30000
18009711a:	00
18009711b:	48 8b 05 7e de 10 00 	mov    0x10de7e(%rip),%rax        # 0x1801a4fa0
180097122:	66 89 1c 25 02 00 03 	mov    %bx,0x30002
180097129:	00
18009712a:	c7 04 25 30 00 03 00 	movl   $0x3004,0x30030
180097131:	04 30 00 00
180097135:	89 3c 25 08 00 03 00 	mov    %edi,0x30008
18009713c:	8b 48 04             	mov    0x4(%rax),%ecx
18009713f:	e8 cc cc 09 00       	call   0x180133e10
180097144:	0f b7 04 25 04 00 03 	movzwl 0x30004,%eax
18009714b:	00
18009714c:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
180097151:	f7 d8                	neg    %eax
180097153:	1b c0                	sbb    %eax,%eax
180097155:	25 01 00 00 c0       	and    $0xc0000001,%eax
18009715a:	48 83 c4 20          	add    $0x20,%rsp
18009715e:	5f                   	pop    %rdi
18009715f:	c3                   	ret
180097160:	cc                   	int3
180097161:	cc                   	int3
180097162:	cc                   	int3
180097163:	cc                   	int3
180097164:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
180097169:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
18009716e:	57                   	push   %rdi
18009716f:	48 83 ec 30          	sub    $0x30,%rsp
180097173:	41 b8 03 00 00 00    	mov    $0x3,%r8d
180097179:	48 8b d9             	mov    %rcx,%rbx
18009717c:	e8 ab 00 00 00       	call   0x18009722c
180097181:	81 3d 81 bf 10 00 63 	cmpl   $0x63538263,0x10bf81(%rip)        # 0x1801a310c
180097188:	82 53 63
18009718b:	0f b7 f0             	movzwl %ax,%esi
18009718e:	0f 84 84 00 00 00    	je     0x180097218
180097194:	41 b8 02 00 00 00    	mov    $0x2,%r8d
18009719a:	48 8b cb             	mov    %rbx,%rcx
18009719d:	e8 8a 00 00 00       	call   0x18009722c
1800971a2:	80 3d a3 be 10 00 00 	cmpb   $0x0,0x10bea3(%rip)        # 0x1801a304c
1800971a9:	0f b7 f0             	movzwl %ax,%esi
1800971ac:	75 5e                	jne    0x18009720c
1800971ae:	33 db                	xor    %ebx,%ebx
1800971b0:	48 8d 3d 7d be 10 00 	lea    0x10be7d(%rip),%rdi        # 0x1801a3034
1800971b7:	85 db                	test   %ebx,%ebx
1800971b9:	74 18                	je     0x1800971d3
1800971bb:	4c 8d 05 42 96 0b 00 	lea    0xb9642(%rip),%r8        # 0x180150804
1800971c2:	ba 40 00 00 00       	mov    $0x40,%edx
1800971c7:	48 8d 0d 7e be 10 00 	lea    0x10be7e(%rip),%rcx        # 0x1801a304c
1800971ce:	e8 55 68 09 00       	call   0x18012da28
1800971d3:	0f b6 0f             	movzbl (%rdi),%ecx
1800971d6:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
1800971db:	41 b9 0a 00 00 00    	mov    $0xa,%r9d
1800971e1:	45 8d 41 02          	lea    0x2(%r9),%r8d
1800971e5:	e8 32 6c 09 00       	call   0x18012de1c
1800971ea:	85 c0                	test   %eax,%eax
1800971ec:	75 14                	jne    0x180097202
1800971ee:	4c 8d 44 24 20       	lea    0x20(%rsp),%r8
1800971f3:	8d 50 40             	lea    0x40(%rax),%edx
1800971f6:	48 8d 0d 4f be 10 00 	lea    0x10be4f(%rip),%rcx        # 0x1801a304c
1800971fd:	e8 26 68 09 00       	call   0x18012da28
180097202:	ff c3                	inc    %ebx
180097204:	48 ff c7             	inc    %rdi
180097207:	83 fb 04             	cmp    $0x4,%ebx
18009720a:	72 ab                	jb     0x1800971b7
18009720c:	b8 ff ff 00 00       	mov    $0xffff,%eax
180097211:	66 89 05 10 be 10 00 	mov    %ax,0x10be10(%rip)        # 0x1801a3028
180097218:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
18009721d:	0f b7 c6             	movzwl %si,%eax
180097220:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
180097225:	48 83 c4 30          	add    $0x30,%rsp
180097229:	5f                   	pop    %rdi
18009722a:	c3                   	ret
18009722b:	cc                   	int3
18009722c:	48 83 ec 28          	sub    $0x28,%rsp
180097230:	33 d2                	xor    %edx,%edx
180097232:	b8 40 00 03 00       	mov    $0x30040,%eax
180097237:	48 89 10             	mov    %rdx,(%rax)
18009723a:	89 50 08             	mov    %edx,0x8(%rax)
18009723d:	ba 71 00 00 00       	mov    $0x71,%edx
180097242:	66 44 89 04 25 42 00 	mov    %r8w,0x30042
180097249:	03 00
18009724b:	e8 90 fe ff ff       	call   0x1800970e0
180097250:	85 c0                	test   %eax,%eax
180097252:	79 05                	jns    0x180097259
180097254:	83 c8 ff             	or     $0xffffffff,%eax
180097257:	eb 34                	jmp    0x18009728d
180097259:	0f b7 14 25 48 00 03 	movzwl 0x30048,%edx
180097260:	00
180097261:	48 8d 0d b8 bd 10 00 	lea    0x10bdb8(%rip),%rcx        # 0x1801a3020
180097268:	0f b7 04 25 46 00 03 	movzwl 0x30046,%eax
18009726f:	00
180097270:	44 0f b7 04 25 44 00 	movzwl 0x30044,%r8d
180097277:	03 00
180097279:	48 c1 e2 04          	shl    $0x4,%rdx
18009727d:	48 03 d0             	add    %rax,%rdx
180097280:	e8 3b e7 09 00       	call   0x1801359c0
180097285:	66 8b 04 25 44 00 03 	mov    0x30044,%ax
18009728c:	00
18009728d:	48 83 c4 28          	add    $0x28,%rsp
180097291:	c3                   	ret
180097292:	cc                   	int3
180097293:	cc                   	int3
180097294:	e9 b7 2b 00 00       	jmp    0x180099e50
180097299:	cc                   	int3
18009729a:	cc                   	int3
18009729b:	cc                   	int3
18009729c:	48 83 ec 28          	sub    $0x28,%rsp
1800972a0:	48 85 c9             	test   %rcx,%rcx
1800972a3:	74 05                	je     0x1800972aa
1800972a5:	e8 52 2d 00 00       	call   0x180099ffc
1800972aa:	48 83 c4 28          	add    $0x28,%rsp
1800972ae:	c3                   	ret
1800972af:	cc                   	int3
1800972b0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1800972b5:	57                   	push   %rdi
1800972b6:	48 83 ec 20          	sub    $0x20,%rsp
1800972ba:	83 25 77 97 0f 00 00 	andl   $0x0,0xf9777(%rip)        # 0x180190a38
1800972c1:	48 8b fa             	mov    %rdx,%rdi
1800972c4:	89 0d 76 97 0f 00    	mov    %ecx,0xf9776(%rip)        # 0x180190a40
1800972ca:	33 d2                	xor    %edx,%edx
1800972cc:	48 8d 0d 6d 97 0f 00 	lea    0xf976d(%rip),%rcx        # 0x180190a40
1800972d3:	49 8b d8             	mov    %r8,%rbx
1800972d6:	e8 b5 94 f8 ff       	call   0x180020790
1800972db:	85 c0                	test   %eax,%eax
1800972dd:	78 17                	js     0x1800972f6
1800972df:	48 8d 0d 4a 97 0f 00 	lea    0xf974a(%rip),%rcx        # 0x180190a30
1800972e6:	48 89 0f             	mov    %rcx,(%rdi)
1800972e9:	48 85 db             	test   %rbx,%rbx
1800972ec:	74 08                	je     0x1800972f6
1800972ee:	8b 0d 50 97 0f 00    	mov    0xf9750(%rip),%ecx        # 0x180190a44
1800972f4:	89 0b                	mov    %ecx,(%rbx)
1800972f6:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1800972fb:	48 83 c4 20          	add    $0x20,%rsp
1800972ff:	5f                   	pop    %rdi
180097300:	c3                   	ret
180097301:	cc                   	int3
180097302:	cc                   	int3
180097303:	cc                   	int3
180097304:	48 8b c4             	mov    %rsp,%rax
180097307:	48 89 58 08          	mov    %rbx,0x8(%rax)
18009730b:	48 89 68 10          	mov    %rbp,0x10(%rax)
18009730f:	48 89 78 18          	mov    %rdi,0x18(%rax)
180097313:	4c 89 60 20          	mov    %r12,0x20(%rax)
180097317:	41 55                	push   %r13
180097319:	41 56                	push   %r14
18009731b:	41 57                	push   %r15
18009731d:	48 83 ec 20          	sub    $0x20,%rsp
180097321:	33 db                	xor    %ebx,%ebx
180097323:	4d 8b e9             	mov    %r9,%r13
180097326:	4d 8b f0             	mov    %r8,%r14
180097329:	48 8b e9             	mov    %rcx,%rbp
18009732c:	48 85 d2             	test   %rdx,%rdx
18009732f:	75 27                	jne    0x180097358
180097331:	4d 85 c0             	test   %r8,%r8
180097334:	75 27                	jne    0x18009735d
180097336:	33 c0                	xor    %eax,%eax
180097338:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
18009733d:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
180097342:	48 8b 7c 24 50       	mov    0x50(%rsp),%rdi
180097347:	4c 8b 64 24 58       	mov    0x58(%rsp),%r12
18009734c:	48 83 c4 20          	add    $0x20,%rsp
180097350:	41 5f                	pop    %r15
180097352:	41 5e                	pop    %r14
180097354:	41 5d                	pop    %r13
180097356:	c3                   	ret
180097357:	cc                   	int3
180097358:	4d 85 f6             	test   %r14,%r14
18009735b:	75 d9                	jne    0x180097336
18009735d:	48 8d 79 10          	lea    0x10(%rcx),%rdi
180097361:	48 85 d2             	test   %rdx,%rdx
180097364:	74 37                	je     0x18009739d
180097366:	0f b7 41 0c          	movzwl 0xc(%rcx),%eax
18009736a:	0f b7 49 0e          	movzwl 0xe(%rcx),%ecx
18009736e:	48 8d 04 c7          	lea    (%rdi,%rax,8),%rax
180097372:	85 c9                	test   %ecx,%ecx
180097374:	74 c0                	je     0x180097336
180097376:	44 0f b7 02          	movzwl (%rdx),%r8d
18009737a:	66 44 39 00          	cmp    %r8w,(%rax)
18009737e:	74 11                	je     0x180097391
180097380:	83 3a ff             	cmpl   $0xffffffff,(%rdx)
180097383:	74 0c                	je     0x180097391
180097385:	48 83 c0 08          	add    $0x8,%rax
180097389:	ff c3                	inc    %ebx
18009738b:	3b d9                	cmp    %ecx,%ebx
18009738d:	72 eb                	jb     0x18009737a
18009738f:	eb a5                	jmp    0x180097336
180097391:	8b 40 04             	mov    0x4(%rax),%eax
180097394:	0f ba f0 1f          	btr    $0x1f,%eax
180097398:	49 03 c5             	add    %r13,%rax
18009739b:	eb 9b                	jmp    0x180097338
18009739d:	66 3b 59 0c          	cmp    0xc(%rcx),%bx
1800973a1:	44 8b e3             	mov    %ebx,%r12d
1800973a4:	73 90                	jae    0x180097336
1800973a6:	8b 0f                	mov    (%rdi),%ecx
1800973a8:	0f ba f1 1f          	btr    $0x1f,%ecx
1800973ac:	49 03 cd             	add    %r13,%rcx
1800973af:	49 83 cf ff          	or     $0xffffffffffffffff,%r15
1800973b3:	49 ff c7             	inc    %r15
1800973b6:	66 43 39 1c 7e       	cmp    %bx,(%r14,%r15,2)
1800973bb:	75 f6                	jne    0x1800973b3
1800973bd:	0f b7 01             	movzwl (%rcx),%eax
1800973c0:	4c 3b f8             	cmp    %rax,%r15
1800973c3:	75 14                	jne    0x1800973d9
1800973c5:	48 83 c1 02          	add    $0x2,%rcx
1800973c9:	4d 8b c7             	mov    %r15,%r8
1800973cc:	49 8b d6             	mov    %r14,%rdx
1800973cf:	e8 8c ca 09 00       	call   0x180133e60
1800973d4:	49 3b c7             	cmp    %r15,%rax
1800973d7:	74 10                	je     0x1800973e9
1800973d9:	0f b7 45 0c          	movzwl 0xc(%rbp),%eax
1800973dd:	48 83 c7 08          	add    $0x8,%rdi
1800973e1:	41 ff c4             	inc    %r12d
1800973e4:	44 3b e0             	cmp    %eax,%r12d
1800973e7:	eb bb                	jmp    0x1800973a4
1800973e9:	8b 47 04             	mov    0x4(%rdi),%eax