18005fe33:	48 8b d6             	mov    %rsi,%rdx
18005fe36:	49 8b cb             	mov    %r11,%rcx
18005fe39:	e8 16 00 00 00       	call   0x18005fe54
18005fe3e:	48 01 5f 50          	add    %rbx,0x50(%rdi)
18005fe42:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
18005fe47:	48 8b 74 24 58       	mov    0x58(%rsp),%rsi
18005fe4c:	48 83 c4 40          	add    $0x40,%rsp
18005fe50:	5f                   	pop    %rdi
18005fe51:	c3                   	ret
18005fe52:	cc                   	int3
18005fe53:	cc                   	int3
18005fe54:	48 8b c4             	mov    %rsp,%rax
18005fe57:	48 89 58 08          	mov    %rbx,0x8(%rax)
18005fe5b:	48 89 68 10          	mov    %rbp,0x10(%rax)
18005fe5f:	48 89 70 18          	mov    %rsi,0x18(%rax)
18005fe63:	48 89 78 20          	mov    %rdi,0x20(%rax)
18005fe67:	48 83 79 40 00       	cmpq   $0x0,0x40(%rcx)
18005fe6c:	41 8a e9             	mov    %r9b,%bpl
18005fe6f:	48 8b fa             	mov    %rdx,%rdi
18005fe72:	48 8b f1             	mov    %rcx,%rsi
18005fe75:	74 6d                	je     0x18005fee4
18005fe77:	48 8b 41 08          	mov    0x8(%rcx),%rax
18005fe7b:	4c 8b 59 20          	mov    0x20(%rcx),%r11
18005fe7f:	8a 49 2a             	mov    0x2a(%rcx),%cl
18005fe82:	4d 85 db             	test   %r11,%r11
18005fe85:	4c 8d 50 30          	lea    0x30(%rax),%r10
18005fe89:	48 8b 40 70          	mov    0x70(%rax),%rax
18005fe8d:	49 8d 5b 38          	lea    0x38(%r11),%rbx
18005fe91:	49 0f 44 da          	cmove  %r10,%rbx
18005fe95:	33 d2                	xor    %edx,%edx
18005fe97:	48 f7 73 08          	divq   0x8(%rbx)
18005fe9b:	4c 8b c8             	mov    %rax,%r9
18005fe9e:	49 d3 e1             	shl    %cl,%r9
18005fea1:	4c 03 c7             	add    %rdi,%r8
18005fea4:	eb 39                	jmp    0x18005fedf
18005fea6:	33 d2                	xor    %edx,%edx
18005fea8:	48 8b c7             	mov    %rdi,%rax
18005feab:	49 f7 f1             	div    %r9
18005feae:	49 8b c9             	mov    %r9,%rcx
18005feb1:	48 2b ca             	sub    %rdx,%rcx
18005feb4:	4c 8b d0             	mov    %rax,%r10
18005feb7:	49 8b d0             	mov    %r8,%rdx
18005feba:	48 2b d7             	sub    %rdi,%rdx
18005febd:	48 3b d1             	cmp    %rcx,%rdx
18005fec0:	48 0f 43 d1          	cmovae %rcx,%rdx
18005fec4:	49 3b d1             	cmp    %r9,%rdx
18005fec7:	75 13                	jne    0x18005fedc
18005fec9:	48 8b 46 58          	mov    0x58(%rsi),%rax
18005fecd:	40 84 ed             	test   %bpl,%bpl
18005fed0:	74 06                	je     0x18005fed8
18005fed2:	44 0f ab 10          	bts    %r10d,(%rax)
18005fed6:	eb 04                	jmp    0x18005fedc
18005fed8:	44 0f b3 10          	btr    %r10d,(%rax)
18005fedc:	48 03 fa             	add    %rdx,%rdi
18005fedf:	49 3b f8             	cmp    %r8,%rdi
18005fee2:	72 c2                	jb     0x18005fea6
18005fee4:	48 8b 5c 24 08       	mov    0x8(%rsp),%rbx
18005fee9:	33 c0                	xor    %eax,%eax
18005feeb:	48 8b 6c 24 10       	mov    0x10(%rsp),%rbp
18005fef0:	48 8b 74 24 18       	mov    0x18(%rsp),%rsi
18005fef5:	48 8b 7c 24 20       	mov    0x20(%rsp),%rdi
18005fefa:	c3                   	ret
18005fefb:	cc                   	int3
18005fefc:	48 8b c4             	mov    %rsp,%rax
18005feff:	48 89 58 10          	mov    %rbx,0x10(%rax)
18005ff03:	48 89 68 18          	mov    %rbp,0x18(%rax)
18005ff07:	48 89 70 20          	mov    %rsi,0x20(%rax)
18005ff0b:	57                   	push   %rdi
18005ff0c:	41 56                	push   %r14
18005ff0e:	41 57                	push   %r15
18005ff10:	48 83 ec 50          	sub    $0x50,%rsp
18005ff14:	48 8b fa             	mov    %rdx,%rdi
18005ff17:	4c 8d 79 50          	lea    0x50(%rcx),%r15
18005ff1b:	41 8b 17             	mov    (%r15),%edx
18005ff1e:	33 f6                	xor    %esi,%esi
18005ff20:	83 c2 07             	add    $0x7,%edx
18005ff23:	40 88 71 48          	mov    %sil,0x48(%rcx)
18005ff27:	c1 ea 03             	shr    $0x3,%edx
18005ff2a:	4c 8b f1             	mov    %rcx,%r14
18005ff2d:	44 8b 47 08          	mov    0x8(%rdi),%r8d
18005ff31:	83 c2 17             	add    $0x17,%edx
18005ff34:	8b 4f 0c             	mov    0xc(%rdi),%ecx
18005ff37:	83 e2 f8             	and    $0xfffffff8,%edx
18005ff3a:	89 70 08             	mov    %esi,0x8(%rax)
18005ff3d:	41 8b c0             	mov    %r8d,%eax
18005ff40:	2b c1                	sub    %ecx,%eax
18005ff42:	3b c2                	cmp    %edx,%eax
18005ff44:	73 44                	jae    0x18005ff8a
18005ff46:	03 ca                	add    %edx,%ecx
18005ff48:	43 8d 04 00          	lea    (%r8,%r8,1),%eax
18005ff4c:	3b c8                	cmp    %eax,%ecx
18005ff4e:	0f 46 c8             	cmovbe %eax,%ecx
18005ff51:	8b e9                	mov    %ecx,%ebp
18005ff53:	e8 bc 69 fe ff       	call   0x180046914
18005ff58:	48 8b d8             	mov    %rax,%rbx
18005ff5b:	48 85 c0             	test   %rax,%rax
18005ff5e:	75 0a                	jne    0x18005ff6a
18005ff60:	be 9a 00 00 c0       	mov    $0xc000009a,%esi
18005ff65:	e9 94 00 00 00       	jmp    0x18005fffe
18005ff6a:	44 8b 47 0c          	mov    0xc(%rdi),%r8d
18005ff6e:	48 8b cb             	mov    %rbx,%rcx
18005ff71:	48 8b 17             	mov    (%rdi),%rdx
18005ff74:	e8 47 5a 0d 00       	call   0x1801359c0
18005ff79:	48 8b 0f             	mov    (%rdi),%rcx
18005ff7c:	e8 db 69 fe ff       	call   0x18004695c
18005ff81:	8b 4f 0c             	mov    0xc(%rdi),%ecx
18005ff84:	48 89 1f             	mov    %rbx,(%rdi)
18005ff87:	89 6f 08             	mov    %ebp,0x8(%rdi)
18005ff8a:	8b d9                	mov    %ecx,%ebx
18005ff8c:	0f 57 c0             	xorps  %xmm0,%xmm0
18005ff8f:	48 03 1f             	add    (%rdi),%rbx
18005ff92:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
18005ff97:	66 0f 7f 44 24 40    	movdqa %xmm0,0x40(%rsp)
18005ff9d:	33 d2                	xor    %edx,%edx
18005ff9f:	0f 11 03             	movups %xmm0,(%rbx)
18005ffa2:	49 8b 46 10          	mov    0x10(%r14),%rax
18005ffa6:	48 89 03             	mov    %rax,(%rbx)
18005ffa9:	45 8b 07             	mov    (%r15),%r8d
18005ffac:	41 8d 40 07          	lea    0x7(%r8),%eax
18005ffb0:	c1 e8 03             	shr    $0x3,%eax
18005ffb3:	89 44 24 44          	mov    %eax,0x44(%rsp)
18005ffb7:	48 8d 43 10          	lea    0x10(%rbx),%rax
18005ffbb:	48 89 44 24 48       	mov    %rax,0x48(%rsp)
18005ffc0:	48 8d 44 24 70       	lea    0x70(%rsp),%rax
18005ffc5:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
18005ffca:	48 8d 05 87 d0 ff ff 	lea    -0x2f79(%rip),%rax        # 0x18005d058
18005ffd1:	4c 89 7c 24 28       	mov    %r15,0x28(%rsp)
18005ffd6:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
18005ffdb:	e8 7c ef fd ff       	call   0x18003ef5c
18005ffe0:	8b 4c 24 44          	mov    0x44(%rsp),%ecx
18005ffe4:	8b 44 24 40          	mov    0x40(%rsp),%eax
18005ffe8:	89 43 08             	mov    %eax,0x8(%rbx)
18005ffeb:	89 4b 0c             	mov    %ecx,0xc(%rbx)
18005ffee:	8d 51 10             	lea    0x10(%rcx),%edx
18005fff1:	48 83 c2 07          	add    $0x7,%rdx
18005fff5:	83 e2 f8             	and    $0xfffffff8,%edx
18005fff8:	01 57 0c             	add    %edx,0xc(%rdi)
18005fffb:	ff 47 10             	incl   0x10(%rdi)
18005fffe:	4c 8d 5c 24 50       	lea    0x50(%rsp),%r11
180060003:	8b c6                	mov    %esi,%eax
180060005:	49 8b 5b 28          	mov    0x28(%r11),%rbx
180060009:	49 8b 6b 30          	mov    0x30(%r11),%rbp
18006000d:	49 8b 73 38          	mov    0x38(%r11),%rsi
180060011:	49 8b e3             	mov    %r11,%rsp
180060014:	41 5f                	pop    %r15
180060016:	41 5e                	pop    %r14
180060018:	5f                   	pop    %rdi
180060019:	c3                   	ret
18006001a:	cc                   	int3
18006001b:	cc                   	int3
18006001c:	48 8b c4             	mov    %rsp,%rax
18006001f:	48 89 58 08          	mov    %rbx,0x8(%rax)
180060023:	48 89 70 18          	mov    %rsi,0x18(%rax)
180060027:	57                   	push   %rdi
180060028:	48 83 ec 20          	sub    $0x20,%rsp
18006002c:	83 60 10 00          	andl   $0x0,0x10(%rax)
180060030:	48 8d 50 10          	lea    0x10(%rax),%rdx
180060034:	48 8b d9             	mov    %rcx,%rbx
180060037:	e8 84 00 00 00       	call   0x1800600c0
18006003c:	84 c0                	test   %al,%al
18006003e:	74 6d                	je     0x1800600ad
180060040:	33 ff                	xor    %edi,%edi
180060042:	48 8b 43 20          	mov    0x20(%rbx),%rax
180060046:	48 85 c0             	test   %rax,%rax
180060049:	74 06                	je     0x180060051
18006004b:	48 83 c0 58          	add    $0x58,%rax
18006004f:	eb 08                	jmp    0x180060059
180060051:	48 8b 43 08          	mov    0x8(%rbx),%rax
180060055:	48 83 c0 50          	add    $0x50,%rax
180060059:	3b 78 10             	cmp    0x10(%rax),%edi
18006005c:	73 4f                	jae    0x1800600ad
18006005e:	33 f6                	xor    %esi,%esi
180060060:	40 38 73 2b          	cmp    %sil,0x2b(%rbx)
180060064:	76 43                	jbe    0x1800600a9
180060066:	44 8b c6             	mov    %esi,%r8d
180060069:	8b d7                	mov    %edi,%edx
18006006b:	48 8b cb             	mov    %rbx,%rcx
18006006e:	e8 dd 12 ff ff       	call   0x180051350
180060073:	8a 50 02             	mov    0x2(%rax),%dl
180060076:	80 e2 0f             	and    $0xf,%dl
180060079:	8d 4a ff             	lea    -0x1(%rdx),%ecx
18006007c:	f6 c1 fa             	test   $0xfa,%cl
18006007f:	75 1e                	jne    0x18006009f
180060081:	80 fa 02             	cmp    $0x2,%dl
180060084:	74 19                	je     0x18006009f
180060086:	48 8b d0             	mov    %rax,%rdx
180060089:	48 8b cb             	mov    %rbx,%rcx
18006008c:	e8 2b 13 ff ff       	call   0x1800513bc
180060091:	44 8b c7             	mov    %edi,%r8d
180060094:	48 8b d0             	mov    %rax,%rdx
180060097:	48 8b cb             	mov    %rbx,%rcx
18006009a:	e8 c9 63 ff ff       	call   0x180056468
18006009f:	0f b6 43 2b          	movzbl 0x2b(%rbx),%eax
1800600a3:	ff c6                	inc    %esi
1800600a5:	3b f0                	cmp    %eax,%esi
1800600a7:	72 bd                	jb     0x180060066
1800600a9:	ff c7                	inc    %edi
1800600ab:	eb 95                	jmp    0x180060042
1800600ad:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1800600b2:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
1800600b7:	48 83 c4 20          	add    $0x20,%rsp
1800600bb:	5f                   	pop    %rdi
1800600bc:	c3                   	ret
1800600bd:	cc                   	int3
1800600be:	cc                   	int3
1800600bf:	cc                   	int3
1800600c0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1800600c5:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
1800600ca:	57                   	push   %rdi
1800600cb:	48 83 ec 20          	sub    $0x20,%rsp
1800600cf:	48 8b f2             	mov    %rdx,%rsi
1800600d2:	33 db                	xor    %ebx,%ebx
1800600d4:	21 1a                	and    %ebx,(%rdx)
1800600d6:	48 8b f9             	mov    %rcx,%rdi
1800600d9:	83 ca ff             	or     $0xffffffff,%edx
1800600dc:	e8 f3 d6 ff ff       	call   0x18005d7d4
1800600e1:	83 f8 04             	cmp    $0x4,%eax
1800600e4:	75 04                	jne    0x1800600ea
1800600e6:	32 c0                	xor    %al,%al
1800600e8:	eb 57                	jmp    0x180060141
1800600ea:	4c 8b 4f 20          	mov    0x20(%rdi),%r9
1800600ee:	33 d2                	xor    %edx,%edx
1800600f0:	4d 85 c9             	test   %r9,%r9
1800600f3:	74 06                	je     0x1800600fb
1800600f5:	49 8d 41 58          	lea    0x58(%r9),%rax
1800600f9:	eb 08                	jmp    0x180060103
1800600fb:	48 8b 47 08          	mov    0x8(%rdi),%rax
1800600ff:	48 83 c0 50          	add    $0x50,%rax
180060103:	3b 50 10             	cmp    0x10(%rax),%edx
180060106:	73 32                	jae    0x18006013a
180060108:	44 0f b6 57 2b       	movzbl 0x2b(%rdi),%r10d
18006010d:	45 33 c0             	xor    %r8d,%r8d
180060110:	45 85 d2             	test   %r10d,%r10d
180060113:	74 21                	je     0x180060136
180060115:	48 8b cf             	mov    %rdi,%rcx
180060118:	e8 33 12 ff ff       	call   0x180051350
18006011d:	8a 48 02             	mov    0x2(%rax),%cl
180060120:	8d 43 01             	lea    0x1(%rbx),%eax
180060123:	80 e1 0f             	and    $0xf,%cl
180060126:	80 f9 05             	cmp    $0x5,%cl
180060129:	0f 45 c3             	cmovne %ebx,%eax
18006012c:	41 ff c0             	inc    %r8d
18006012f:	8b d8                	mov    %eax,%ebx
180060131:	45 3b c2             	cmp    %r10d,%r8d
180060134:	72 df                	jb     0x180060115
180060136:	ff c2                	inc    %edx
180060138:	eb b6                	jmp    0x1800600f0
18006013a:	85 db                	test   %ebx,%ebx
18006013c:	89 1e                	mov    %ebx,(%rsi)
18006013e:	0f 95 c0             	setne  %al
180060141:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
180060146:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
18006014b:	48 83 c4 20          	add    $0x20,%rsp
18006014f:	5f                   	pop    %rdi
180060150:	c3                   	ret
180060151:	cc                   	int3
180060152:	cc                   	int3
180060153:	cc                   	int3
180060154:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
180060159:	55                   	push   %rbp
18006015a:	56                   	push   %rsi
18006015b:	57                   	push   %rdi
18006015c:	41 54                	push   %r12
18006015e:	41 55                	push   %r13
180060160:	41 56                	push   %r14
180060162:	41 57                	push   %r15
180060164:	48 83 ec 30          	sub    $0x30,%rsp
180060168:	48 8b 41 20          	mov    0x20(%rcx),%rax
18006016c:	33 ff                	xor    %edi,%edi
18006016e:	89 7c 24 70          	mov    %edi,0x70(%rsp)
180060172:	48 8b f1             	mov    %rcx,%rsi
180060175:	48 8b 49 08          	mov    0x8(%rcx),%rcx
180060179:	48 85 c0             	test   %rax,%rax
18006017c:	74 06                	je     0x180060184
18006017e:	48 83 c0 38          	add    $0x38,%rax
180060182:	eb 04                	jmp    0x180060188
180060184:	48 8d 41 30          	lea    0x30(%rcx),%rax
180060188:	4c 8b 60 08          	mov    0x8(%rax),%r12
18006018c:	48 8b 81 50 01 00 00 	mov    0x150(%rcx),%rax
180060193:	4c 89 64 24 78       	mov    %r12,0x78(%rsp)
180060198:	48 85 c0             	test   %rax,%rax
18006019b:	74 21                	je     0x1800601be
18006019d:	39 b8 24 01 00 00    	cmp    %edi,0x124(%rax)
1800601a3:	7e 19                	jle    0x1800601be
1800601a5:	48 8b 01             	mov    (%rcx),%rax
1800601a8:	48 8b 80 98 00 00 00 	mov    0x98(%rax),%rax
1800601af:	ff d0                	call   *%rax
1800601b1:	0f 1f 00             	nopl   (%rax)
1800601b4:	bf 02 00 e7 00       	mov    $0xe70002,%edi
1800601b9:	e9 13 02 00 00       	jmp    0x1800603d1
1800601be:	48 8d 54 24 70       	lea    0x70(%rsp),%rdx
1800601c3:	48 8b ce             	mov    %rsi,%rcx
1800601c6:	e8 f5 fe ff ff       	call   0x1800600c0
1800601cb:	84 c0                	test   %al,%al
1800601cd:	0f 84 fe 01 00 00    	je     0x1800603d1
1800601d3:	8b ef                	mov    %edi,%ebp
1800601d5:	41 bf 01 00 00 00    	mov    $0x1,%r15d
1800601db:	48 8b 46 20          	mov    0x20(%rsi),%rax
1800601df:	48 85 c0             	test   %rax,%rax
1800601e2:	74 06                	je     0x1800601ea
1800601e4:	48 83 c0 58          	add    $0x58,%rax
1800601e8:	eb 08                	jmp    0x1800601f2
1800601ea:	48 8b 46 08          	mov    0x8(%rsi),%rax
1800601ee:	48 83 c0 50          	add    $0x50,%rax
1800601f2:	3b 68 10             	cmp    0x10(%rax),%ebp
1800601f5:	0f 83 83 00 00 00    	jae    0x18006027e
1800601fb:	44 8b f7             	mov    %edi,%r14d
1800601fe:	40 38 7e 2b          	cmp    %dil,0x2b(%rsi)
180060202:	76 72                	jbe    0x180060276
180060204:	45 8b c6             	mov    %r14d,%r8d
180060207:	8b d5                	mov    %ebp,%edx
180060209:	48 8b ce             	mov    %rsi,%rcx
18006020c:	e8 3f 11 ff ff       	call   0x180051350
180060211:	48 8b d0             	mov    %rax,%rdx
180060214:	48 8b d8             	mov    %rax,%rbx
180060217:	e8 a0 11 ff ff       	call   0x1800513bc
18006021c:	f6 43 03 0f          	testb  $0xf,0x3(%rbx)
180060220:	4c 8b e0             	mov    %rax,%r12
180060223:	0f 85 a8 01 00 00    	jne    0x1800603d1
180060229:	45 8b c6             	mov    %r14d,%r8d
18006022c:	8b d5                	mov    %ebp,%edx
18006022e:	48 8b ce             	mov    %rsi,%rcx
180060231:	e8 de 12 ff ff       	call   0x180051514
180060236:	84 c0                	test   %al,%al
180060238:	74 30                	je     0x18006026a
18006023a:	49 8b 04 24          	mov    (%r12),%rax
18006023e:	49 8b cc             	mov    %r12,%rcx
180060241:	48 8b 40 58          	mov    0x58(%rax),%rax
180060245:	ff d0                	call   *%rax
180060247:	0f 1f 00             	nopl   (%rax)
18006024a:	40 38 78 04          	cmp    %dil,0x4(%rax)
18006024e:	0f 85 7d 01 00 00    	jne    0x1800603d1
180060254:	44 8b c5             	mov    %ebp,%r8d
180060257:	49 8b d4             	mov    %r12,%rdx
18006025a:	48 8b ce             	mov    %rsi,%rcx
18006025d:	e8 06 62 ff ff       	call   0x180056468
180060262:	84 c0                	test   %al,%al
180060264:	0f 84 67 01 00 00    	je     0x1800603d1
18006026a:	0f b6 46 2b          	movzbl 0x2b(%rsi),%eax
18006026e:	45 03 f7             	add    %r15d,%r14d
180060271:	44 3b f0             	cmp    %eax,%r14d
180060274:	72 8e                	jb     0x180060204
180060276:	41 03 ef             	add    %r15d,%ebp
180060279:	e9 5d ff ff ff       	jmp    0x1800601db
18006027e:	b9 f8 00 00 00       	mov    $0xf8,%ecx
180060283:	e8 8c 66 fe ff       	call   0x180046914
180060288:	48 8b d8             	mov    %rax,%rbx
18006028b:	48 85 c0             	test   %rax,%rax
18006028e:	74 29                	je     0x1800602b9
180060290:	48 8b c8             	mov    %rax,%rcx