18000fedd:	48 8b d3             	mov    %rbx,%rdx
18000fee0:	48 8b cf             	mov    %rdi,%rcx
18000fee3:	e8 60 fb ff ff       	call   0x18000fa48
18000fee8:	48 39 6c 24 28       	cmp    %rbp,0x28(%rsp)
18000feed:	74 0a                	je     0x18000fef9
18000feef:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
18000fef4:	e8 2b df 06 00       	call   0x18007de24
18000fef9:	8b c6                	mov    %esi,%eax
18000fefb:	eb 05                	jmp    0x18000ff02
18000fefd:	b8 0d 00 00 c0       	mov    $0xc000000d,%eax
18000ff02:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
18000ff07:	48 8b 6c 24 58       	mov    0x58(%rsp),%rbp
18000ff0c:	48 8b 74 24 60       	mov    0x60(%rsp),%rsi
18000ff11:	48 83 c4 40          	add    $0x40,%rsp
18000ff15:	5f                   	pop    %rdi
18000ff16:	c3                   	ret
18000ff17:	cc                   	int3
18000ff18:	40 53                	rex push %rbx
18000ff1a:	48 83 ec 30          	sub    $0x30,%rsp
18000ff1e:	48 8b d9             	mov    %rcx,%rbx
18000ff21:	48 85 c9             	test   %rcx,%rcx
18000ff24:	75 07                	jne    0x18000ff2d
18000ff26:	b8 0d 00 00 c0       	mov    $0xc000000d,%eax
18000ff2b:	eb 33                	jmp    0x18000ff60
18000ff2d:	41 b8 08 00 00 00    	mov    $0x8,%r8d
18000ff33:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
18000ff38:	48 8d 0d 91 cc 15 00 	lea    0x15cc91(%rip),%rcx        # 0x18016cbd0
18000ff3f:	e8 a8 0d 0d 00       	call   0x1800e0cec
18000ff44:	4c 8b 4c 24 40       	mov    0x40(%rsp),%r9
18000ff49:	45 33 c0             	xor    %r8d,%r8d
18000ff4c:	8b 53 40             	mov    0x40(%rbx),%edx
18000ff4f:	48 8b 4b 30          	mov    0x30(%rbx),%rcx
18000ff53:	48 83 64 24 20 00    	andq   $0x0,0x20(%rsp)
18000ff59:	e8 02 f3 01 00       	call   0x18002f260
18000ff5e:	33 c0                	xor    %eax,%eax
18000ff60:	48 83 c4 30          	add    $0x30,%rsp
18000ff64:	5b                   	pop    %rbx
18000ff65:	c3                   	ret
18000ff66:	cc                   	int3
18000ff67:	cc                   	int3
18000ff68:	48 85 c9             	test   %rcx,%rcx
18000ff6b:	74 59                	je     0x18000ffc6
18000ff6d:	48 85 d2             	test   %rdx,%rdx
18000ff70:	74 54                	je     0x18000ffc6
18000ff72:	4d 85 c0             	test   %r8,%r8
18000ff75:	74 4f                	je     0x18000ffc6
18000ff77:	8b 02                	mov    (%rdx),%eax
18000ff79:	41 b9 00 00 00 04    	mov    $0x4000000,%r9d
18000ff7f:	41 85 c1             	test   %eax,%r9d
18000ff82:	74 06                	je     0x18000ff8a
18000ff84:	44 85 49 68          	test   %r9d,0x68(%rcx)
18000ff88:	75 0f                	jne    0x18000ff99
18000ff8a:	41 b9 ff ff ff fb    	mov    $0xfbffffff,%r9d
18000ff90:	41 23 c1             	and    %r9d,%eax
18000ff93:	89 02                	mov    %eax,(%rdx)
18000ff95:	44 21 49 68          	and    %r9d,0x68(%rcx)
18000ff99:	41 8b 00             	mov    (%r8),%eax
18000ff9c:	b2 01                	mov    $0x1,%dl
18000ff9e:	84 c2                	test   %al,%dl
18000ffa0:	74 0e                	je     0x18000ffb0
18000ffa2:	84 91 e4 00 00 00    	test   %dl,0xe4(%rcx)
18000ffa8:	75 06                	jne    0x18000ffb0
18000ffaa:	83 e0 fe             	and    $0xfffffffe,%eax
18000ffad:	41 89 00             	mov    %eax,(%r8)
18000ffb0:	a8 02                	test   $0x2,%al
18000ffb2:	74 0e                	je     0x18000ffc2
18000ffb4:	84 91 e4 00 00 00    	test   %dl,0xe4(%rcx)
18000ffba:	74 06                	je     0x18000ffc2
18000ffbc:	83 e0 fd             	and    $0xfffffffd,%eax
18000ffbf:	41 89 00             	mov    %eax,(%r8)
18000ffc2:	33 c0                	xor    %eax,%eax
18000ffc4:	c3                   	ret
18000ffc5:	cc                   	int3
18000ffc6:	b8 0d 00 00 c0       	mov    $0xc000000d,%eax
18000ffcb:	c3                   	ret
18000ffcc:	cc                   	int3
18000ffcd:	cc                   	int3
18000ffce:	cc                   	int3
18000ffcf:	cc                   	int3
18000ffd0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18000ffd5:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
18000ffda:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
18000ffdf:	57                   	push   %rdi
18000ffe0:	41 54                	push   %r12
18000ffe2:	41 55                	push   %r13
18000ffe4:	41 56                	push   %r14
18000ffe6:	41 57                	push   %r15
18000ffe8:	48 83 ec 20          	sub    $0x20,%rsp
18000ffec:	33 f6                	xor    %esi,%esi
18000ffee:	49 8b d9             	mov    %r9,%rbx
18000fff1:	4d 8b e0             	mov    %r8,%r12
18000fff4:	4c 8b ea             	mov    %rdx,%r13
18000fff7:	8b e9                	mov    %ecx,%ebp
18000fff9:	4d 85 c9             	test   %r9,%r9
18000fffc:	0f 84 ce 01 00 00    	je     0x1800101d0
180010002:	4c 8b 74 24 70       	mov    0x70(%rsp),%r14
180010007:	4d 85 f6             	test   %r14,%r14
18001000a:	0f 84 c0 01 00 00    	je     0x1800101d0
180010010:	48 8b 7c 24 78       	mov    0x78(%rsp),%rdi
180010015:	48 85 ff             	test   %rdi,%rdi
180010018:	0f 84 b2 01 00 00    	je     0x1800101d0
18001001e:	b9 00 00 00 04       	mov    $0x4000000,%ecx
180010023:	40 f6 c5 04          	test   $0x4,%bpl
180010027:	74 67                	je     0x180010090
180010029:	41 85 0e             	test   %ecx,(%r14)
18001002c:	74 62                	je     0x180010090
18001002e:	48 8b 05 0b 77 13 00 	mov    0x13770b(%rip),%rax        # 0x180147740
180010035:	4c 8d 3d 04 77 13 00 	lea    0x137704(%rip),%r15        # 0x180147740
18001003c:	eb 16                	jmp    0x180010054
18001003e:	48 8b d0             	mov    %rax,%rdx
180010041:	49 8b cd             	mov    %r13,%rcx
180010044:	e8 a3 ad 11 00       	call   0x18012adec
180010049:	85 c0                	test   %eax,%eax
18001004b:	74 0e                	je     0x18001005b
18001004d:	49 83 c7 08          	add    $0x8,%r15
180010051:	49 8b 07             	mov    (%r15),%rax
180010054:	48 85 c0             	test   %rax,%rax
180010057:	75 e5                	jne    0x18001003e
180010059:	eb 40                	jmp    0x18001009b
18001005b:	0f ba 33 0d          	btrl   $0xd,(%rbx)
18001005f:	83 e5 fb             	and    $0xfffffffb,%ebp
180010062:	83 cd 20             	or     $0x20,%ebp
180010065:	b9 00 00 00 04       	mov    $0x4000000,%ecx
18001006a:	83 0f 01             	orl    $0x1,(%rdi)
18001006d:	8b c5                	mov    %ebp,%eax
18001006f:	25 00 04 00 00       	and    $0x400,%eax
180010074:	74 08                	je     0x18001007e
180010076:	41 85 0e             	test   %ecx,(%r14)
180010079:	74 03                	je     0x18001007e
18001007b:	83 0f 02             	orl    $0x2,(%rdi)
18001007e:	8b 0b                	mov    (%rbx),%ecx
180010080:	0f ba e5 08          	bt     $0x8,%ebp
180010084:	73 1f                	jae    0x1800100a5
180010086:	b8 70 82 00 00       	mov    $0x8270,%eax
18001008b:	e9 ac 00 00 00       	jmp    0x18001013c
180010090:	40 f6 c5 20          	test   $0x20,%bpl
180010094:	74 d7                	je     0x18001006d
180010096:	41 85 0e             	test   %ecx,(%r14)
180010099:	74 d2                	je     0x18001006d
18001009b:	b8 01 00 00 c0       	mov    $0xc0000001,%eax
1800100a0:	e9 30 01 00 00       	jmp    0x1800101d5
1800100a5:	40 f6 c5 04          	test   $0x4,%bpl
1800100a9:	74 1b                	je     0x1800100c6
1800100ab:	b8 70 22 00 00       	mov    $0x2270,%eax
1800100b0:	83 3d 39 51 18 00 01 	cmpl   $0x1,0x185139(%rip)        # 0x1801951f0
1800100b7:	ba 10 00 00 00       	mov    $0x10,%edx
1800100bc:	0f 44 c2             	cmove  %edx,%eax
1800100bf:	0b c8                	or     %eax,%ecx
1800100c1:	e9 f8 00 00 00       	jmp    0x1800101be
1800100c6:	40 f6 c5 08          	test   $0x8,%bpl
1800100ca:	74 2f                	je     0x1800100fb
1800100cc:	83 3d 1d 51 18 00 01 	cmpl   $0x1,0x18511d(%rip)        # 0x1801951f0
1800100d3:	75 08                	jne    0x1800100dd
1800100d5:	83 c9 10             	or     $0x10,%ecx
1800100d8:	e9 e1 00 00 00       	jmp    0x1800101be
1800100dd:	81 c9 70 02 00 00    	or     $0x270,%ecx
1800100e3:	40 38 35 ce 50 19 00 	cmp    %sil,0x1950ce(%rip)        # 0x1801a51b8
1800100ea:	89 0b                	mov    %ecx,(%rbx)
1800100ec:	0f 85 ce 00 00 00    	jne    0x1800101c0
1800100f2:	0f ba e9 0f          	bts    $0xf,%ecx
1800100f6:	e9 c3 00 00 00       	jmp    0x1800101be
1800100fb:	40 f6 c5 20          	test   $0x20,%bpl
1800100ff:	74 07                	je     0x180010108
180010101:	b8 70 82 00 00       	mov    $0x8270,%eax
180010106:	eb a8                	jmp    0x1800100b0
180010108:	40 f6 c5 40          	test   $0x40,%bpl
18001010c:	74 07                	je     0x180010115
18001010e:	b8 70 42 00 00       	mov    $0x4270,%eax
180010113:	eb 27                	jmp    0x18001013c
180010115:	41 bf 00 02 00 00    	mov    $0x200,%r15d
18001011b:	41 85 ef             	test   %ebp,%r15d
18001011e:	74 13                	je     0x180010133
180010120:	b8 70 82 00 00       	mov    $0x8270,%eax
180010125:	0b c8                	or     %eax,%ecx
180010127:	89 0b                	mov    %ecx,(%rbx)
180010129:	41 83 0c 24 01       	orl    $0x1,(%r12)
18001012e:	e9 8d 00 00 00       	jmp    0x1800101c0
180010133:	85 c0                	test   %eax,%eax
180010135:	74 1a                	je     0x180010151
180010137:	b8 70 02 10 00       	mov    $0x100270,%eax
18001013c:	83 3d ad 50 18 00 01 	cmpl   $0x1,0x1850ad(%rip)        # 0x1801951f0
180010143:	ba 10 00 00 00       	mov    $0x10,%edx
180010148:	0f 44 c2             	cmove  %edx,%eax
18001014b:	0b c1                	or     %ecx,%eax
18001014d:	89 03                	mov    %eax,(%rbx)
18001014f:	eb 6f                	jmp    0x1800101c0
180010151:	8b 05 99 50 18 00    	mov    0x185099(%rip),%eax        # 0x1801951f0
180010157:	81 e1 8f fd ff ff    	and    $0xfffffd8f,%ecx
18001015d:	89 0b                	mov    %ecx,(%rbx)
18001015f:	85 c0                	test   %eax,%eax
180010161:	74 59                	je     0x1800101bc
180010163:	ba 10 00 00 00       	mov    $0x10,%edx
180010168:	8b fa                	mov    %edx,%edi
18001016a:	83 f8 02             	cmp    $0x2,%eax
18001016d:	7c 4b                	jl     0x1800101ba
18001016f:	83 f8 03             	cmp    $0x3,%eax
180010172:	8d 4a 20             	lea    0x20(%rdx),%ecx
180010175:	0f 44 f9             	cmove  %ecx,%edi
180010178:	40 84 ea             	test   %bpl,%dl
18001017b:	75 32                	jne    0x1800101af
18001017d:	40 84 ed             	test   %bpl,%bpl
180010180:	78 2d                	js     0x1800101af
180010182:	48 8b 05 37 75 13 00 	mov    0x137537(%rip),%rax        # 0x1801476c0
180010189:	4c 8d 35 30 75 13 00 	lea    0x137530(%rip),%r14        # 0x1801476c0
180010190:	eb 16                	jmp    0x1800101a8
180010192:	48 8b d0             	mov    %rax,%rdx
180010195:	49 8b cd             	mov    %r13,%rcx
180010198:	e8 4f ac 11 00       	call   0x18012adec
18001019d:	85 c0                	test   %eax,%eax
18001019f:	74 0e                	je     0x1800101af
1800101a1:	49 83 c6 08          	add    $0x8,%r14
1800101a5:	49 8b 06             	mov    (%r14),%rax
1800101a8:	48 85 c0             	test   %rax,%rax
1800101ab:	75 e5                	jne    0x180010192
1800101ad:	eb 06                	jmp    0x1800101b5
1800101af:	81 cf 60 80 00 00    	or     $0x8060,%edi
1800101b5:	8b 0b                	mov    (%rbx),%ecx
1800101b7:	41 0b ff             	or     %r15d,%edi
1800101ba:	8b f7                	mov    %edi,%esi
1800101bc:	0b ce                	or     %esi,%ecx
1800101be:	89 0b                	mov    %ecx,(%rbx)
1800101c0:	f7 c5 28 04 00 00    	test   $0x428,%ebp
1800101c6:	74 04                	je     0x1800101cc
1800101c8:	0f ba 2b 16          	btsl   $0x16,(%rbx)
1800101cc:	33 c0                	xor    %eax,%eax
1800101ce:	eb 05                	jmp    0x1800101d5
1800101d0:	b8 0d 00 00 c0       	mov    $0xc000000d,%eax
1800101d5:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
1800101da:	48 8b 6c 24 58       	mov    0x58(%rsp),%rbp
1800101df:	48 8b 74 24 60       	mov    0x60(%rsp),%rsi
1800101e4:	48 83 c4 20          	add    $0x20,%rsp
1800101e8:	41 5f                	pop    %r15
1800101ea:	41 5e                	pop    %r14
1800101ec:	41 5d                	pop    %r13
1800101ee:	41 5c                	pop    %r12
1800101f0:	5f                   	pop    %rdi
1800101f1:	c3                   	ret
1800101f2:	cc                   	int3
1800101f3:	cc                   	int3
1800101f4:	48 8b 54 24 30       	mov    0x30(%rsp),%rdx
1800101f9:	48 85 d2             	test   %rdx,%rdx
1800101fc:	75 07                	jne    0x180010205
1800101fe:	b8 0d 00 00 c0       	mov    $0xc000000d,%eax
180010203:	c3                   	ret
180010204:	cc                   	int3
180010205:	83 22 00             	andl   $0x0,(%rdx)
180010208:	41 b8 01 00 00 00    	mov    $0x1,%r8d
18001020e:	8b 02                	mov    (%rdx),%eax
180010210:	f6 c1 28             	test   $0x28,%cl
180010213:	41 0f 45 c0          	cmovne %r8d,%eax
180010217:	0f ba e1 0a          	bt     $0xa,%ecx
18001021b:	41 8d 48 01          	lea    0x1(%r8),%ecx
18001021f:	0f 42 c1             	cmovb  %ecx,%eax
180010222:	89 02                	mov    %eax,(%rdx)
180010224:	33 c0                	xor    %eax,%eax
180010226:	c3                   	ret
180010227:	cc                   	int3
180010228:	48 8b c4             	mov    %rsp,%rax
18001022b:	48 89 58 08          	mov    %rbx,0x8(%rax)
18001022f:	57                   	push   %rdi
180010230:	48 83 ec 50          	sub    $0x50,%rsp
180010234:	48 8b d9             	mov    %rcx,%rbx
180010237:	0f 57 c0             	xorps  %xmm0,%xmm0
18001023a:	33 ff                	xor    %edi,%edi
18001023c:	48 8d 48 e8          	lea    -0x18(%rax),%rcx
180010240:	40 88 78 18          	mov    %dil,0x18(%rax)
180010244:	0f 11 40 d8          	movups %xmm0,-0x28(%rax)
180010248:	e8 77 d4 06 00       	call   0x18007d6c4
18001024d:	48 8d 44 24 30       	lea    0x30(%rsp),%rax
180010252:	45 33 c0             	xor    %r8d,%r8d
180010255:	4c 8d 4c 24 70       	lea    0x70(%rsp),%r9
18001025a:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
18001025f:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
180010264:	48 8b cb             	mov    %rbx,%rcx
180010267:	e8 50 c7 0f 00       	call   0x18010c9bc
18001026c:	85 c0                	test   %eax,%eax
18001026e:	78 12                	js     0x180010282
180010270:	40 38 7c 24 70       	cmp    %dil,0x70(%rsp)
180010275:	74 0b                	je     0x180010282
180010277:	66 3b 7c 24 30       	cmp    0x30(%rsp),%di
18001027c:	74 04                	je     0x180010282
18001027e:	b0 01                	mov    $0x1,%al
180010280:	eb 02                	jmp    0x180010284
180010282:	32 c0                	xor    %al,%al
180010284:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
180010289:	48 83 c4 50          	add    $0x50,%rsp
18001028d:	5f                   	pop    %rdi
18001028e:	c3                   	ret
18001028f:	cc                   	int3
180010290:	44 89 4c 24 20       	mov    %r9d,0x20(%rsp)
180010295:	55                   	push   %rbp
180010296:	48 8b ec             	mov    %rsp,%rbp
180010299:	48 81 ec 80 00 00 00 	sub    $0x80,%rsp
1800102a0:	48 8d 45 28          	lea    0x28(%rbp),%rax
1800102a4:	48 c7 45 c8 04 00 00 	movq   $0x4,-0x38(%rbp)
1800102ab:	00
1800102ac:	48 89 45 c0          	mov    %rax,-0x40(%rbp)
1800102b0:	48 8d 15 69 53 13 00 	lea    0x135369(%rip),%rdx        # 0x180145620
1800102b7:	48 8d 45 30          	lea    0x30(%rbp),%rax
1800102bb:	48 c7 45 d8 04 00 00 	movq   $0x4,-0x28(%rbp)
1800102c2:	00
1800102c3:	48 89 45 d0          	mov    %rax,-0x30(%rbp)
1800102c7:	41 b9 05 00 00 00    	mov    $0x5,%r9d
1800102cd:	48 8d 45 38          	lea    0x38(%rbp),%rax
1800102d1:	48 c7 45 e8 04 00 00 	movq   $0x4,-0x18(%rbp)
1800102d8:	00
1800102d9:	48 89 45 e0          	mov    %rax,-0x20(%rbp)
1800102dd:	48 8d 45 40          	lea    0x40(%rbp),%rax
1800102e1:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
1800102e5:	48 8d 45 b0          	lea    -0x50(%rbp),%rax
1800102e9:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
1800102ee:	48 c7 45 f8 04 00 00 	movq   $0x4,-0x8(%rbp)
1800102f5:	00
1800102f6:	e8 95 15 ff ff       	call   0x180001890
1800102fb:	48 81 c4 80 00 00 00 	add    $0x80,%rsp
180010302:	5d                   	pop    %rbp
180010303:	c3                   	ret
180010304:	cc                   	int3
180010305:	cc                   	int3
180010306:	cc                   	int3
180010307:	cc                   	int3
180010308:	4c 89 44 24 18       	mov    %r8,0x18(%rsp)
18001030d:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
180010312:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
180010317:	55                   	push   %rbp
180010318:	53                   	push   %rbx
180010319:	56                   	push   %rsi
18001031a:	57                   	push   %rdi
18001031b:	41 54                	push   %r12
18001031d:	41 55                	push   %r13
18001031f:	41 56                	push   %r14
180010321:	48 8b ec             	mov    %rsp,%rbp
180010324:	48 83 ec 50          	sub    $0x50,%rsp
180010328:	33 db                	xor    %ebx,%ebx
18001032a:	33 c9                	xor    %ecx,%ecx
18001032c:	44 8a e3             	mov    %bl,%r12b
18001032f:	4d 8b e9             	mov    %r9,%r13
180010332:	e8 55 08 00 00       	call   0x180010b8c
180010337:	85 c0                	test   %eax,%eax
180010339:	0f 88 f5 01 00 00    	js     0x180010534
18001033f:	48 39 1d 4a f8 15 00 	cmp    %rbx,0x15f84a(%rip)        # 0x18016fb90
180010346:	44 8d 73 01          	lea    0x1(%rbx),%r14d
18001034a:	48 8b 7d 60          	mov    0x60(%rbp),%rdi
18001034e:	c7 45 f4 04 00 00 00 	movl   $0x4,-0xc(%rbp)
180010355:	74 16                	je     0x18001036d
180010357:	4c 8d 4d f4          	lea    -0xc(%rbp),%r9
18001035b:	4c 8b c7             	mov    %rdi,%r8
18001035e:	8d 53 0a             	lea    0xa(%rbx),%edx
180010361:	41 8a ce             	mov    %r14b,%cl
180010364:	e8 a3 07 00 00       	call   0x180010b0c