1407a0057:	57                   	push   %rdi
1407a0058:	48 83 ec 20          	sub    $0x20,%rsp
1407a005c:	48 8b da             	mov    %rdx,%rbx
1407a005f:	48 8b f1             	mov    %rcx,%rsi
1407a0062:	33 ff                	xor    %edi,%edi
1407a0064:	48 8b 49 58          	mov    0x58(%rcx),%rcx
1407a0068:	48 85 c9             	test   %rcx,%rcx
1407a006b:	74 0c                	je     0x1407a0079
1407a006d:	ba 14 00 00 00       	mov    $0x14,%edx
1407a0072:	e8 69 6e 09 00       	call   0x140836ee0
1407a0077:	eb 07                	jmp    0x1407a0080
1407a0079:	48 8d 05 f8 4f c0 00 	lea    0xc04ff8(%rip),%rax        # 0x1413a5078
1407a0080:	48 83 38 00          	cmpq   $0x0,(%rax)
1407a0084:	74 20                	je     0x1407a00a6
1407a0086:	48 8b 0b             	mov    (%rbx),%rcx
1407a0089:	48 85 c9             	test   %rcx,%rcx
1407a008c:	0f 84 86 00 00 00    	je     0x1407a0118
1407a0092:	8b 41 10             	mov    0x10(%rcx),%eax
1407a0095:	ff c8                	dec    %eax
1407a0097:	89 41 10             	mov    %eax,0x10(%rcx)
1407a009a:	85 c0                	test   %eax,%eax
1407a009c:	7f 7a                	jg     0x1407a0118
1407a009e:	0f 88 87 00 00 00    	js     0x1407a012b
1407a00a4:	eb 60                	jmp    0x1407a0106
1407a00a6:	b9 28 00 00 00       	mov    $0x28,%ecx
1407a00ab:	e8 58 b0 67 00       	call   0x140e1b108
1407a00b0:	48 89 44 24 58       	mov    %rax,0x58(%rsp)
1407a00b5:	48 85 c0             	test   %rax,%rax
1407a00b8:	74 20                	je     0x1407a00da
1407a00ba:	48 8b 0b             	mov    (%rbx),%rcx
1407a00bd:	48 89 3b             	mov    %rdi,(%rbx)
1407a00c0:	48 89 4c 24 40       	mov    %rcx,0x40(%rsp)
1407a00c5:	4c 8d 44 24 40       	lea    0x40(%rsp),%r8
1407a00ca:	ba 14 00 00 00       	mov    $0x14,%edx
1407a00cf:	48 8b c8             	mov    %rax,%rcx
1407a00d2:	e8 e9 4d 09 00       	call   0x140834ec0
1407a00d7:	48 8b f8             	mov    %rax,%rdi
1407a00da:	48 89 7c 24 50       	mov    %rdi,0x50(%rsp)
1407a00df:	45 33 c0             	xor    %r8d,%r8d
1407a00e2:	48 8d 54 24 50       	lea    0x50(%rsp),%rdx
1407a00e7:	48 8b ce             	mov    %rsi,%rcx
1407a00ea:	e8 e1 e4 ff ff       	call   0x14079e5d0
1407a00ef:	90                   	nop
1407a00f0:	48 8b 0b             	mov    (%rbx),%rcx
1407a00f3:	48 85 c9             	test   %rcx,%rcx
1407a00f6:	74 20                	je     0x1407a0118
1407a00f8:	8b 41 10             	mov    0x10(%rcx),%eax
1407a00fb:	ff c8                	dec    %eax
1407a00fd:	89 41 10             	mov    %eax,0x10(%rcx)
1407a0100:	85 c0                	test   %eax,%eax
1407a0102:	7f 14                	jg     0x1407a0118
1407a0104:	78 1a                	js     0x1407a0120
1407a0106:	48 8b 01             	mov    (%rcx),%rax
1407a0109:	ba 01 00 00 00       	mov    $0x1,%edx
1407a010e:	48 8b 00             	mov    (%rax),%rax
1407a0111:	ff 15 09 39 7e 00    	call   *0x7e3909(%rip)        # 0x140f83a20
1407a0117:	90                   	nop
1407a0118:	48 83 c4 20          	add    $0x20,%rsp
1407a011c:	5f                   	pop    %rdi
1407a011d:	5e                   	pop    %rsi
1407a011e:	5b                   	pop    %rbx
1407a011f:	c3                   	ret
1407a0120:	b9 02 00 00 00       	mov    $0x2,%ecx
1407a0125:	e8 d6 a5 fe ff       	call   0x14078a700
1407a012a:	90                   	nop
1407a012b:	b9 02 00 00 00       	mov    $0x2,%ecx
1407a0130:	e8 cb a5 fe ff       	call   0x14078a700
1407a0135:	cc                   	int3
1407a0136:	cc                   	int3
1407a0137:	cc                   	int3
1407a0138:	cc                   	int3
1407a0139:	cc                   	int3
1407a013a:	cc                   	int3
1407a013b:	cc                   	int3
1407a013c:	cc                   	int3
1407a013d:	cc                   	int3
1407a013e:	cc                   	int3
1407a013f:	cc                   	int3
1407a0140:	40 53                	rex push %rbx
1407a0142:	48 83 ec 30          	sub    $0x30,%rsp
1407a0146:	48 8b da             	mov    %rdx,%rbx
1407a0149:	48 8b 51 28          	mov    0x28(%rcx),%rdx
1407a014d:	48 8b cb             	mov    %rbx,%rcx
1407a0150:	e8 4b 70 0b 00       	call   0x1408571a0
1407a0155:	48 8b c3             	mov    %rbx,%rax
1407a0158:	48 83 c4 30          	add    $0x30,%rsp
1407a015c:	5b                   	pop    %rbx
1407a015d:	c3                   	ret
1407a015e:	cc                   	int3
1407a015f:	cc                   	int3
1407a0160:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
1407a0165:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
1407a016a:	57                   	push   %rdi
1407a016b:	48 83 ec 20          	sub    $0x20,%rsp
1407a016f:	48 8b fa             	mov    %rdx,%rdi
1407a0172:	48 8b d9             	mov    %rcx,%rbx
1407a0175:	48 8b 49 58          	mov    0x58(%rcx),%rcx
1407a0179:	48 85 c9             	test   %rcx,%rcx
1407a017c:	74 2b                	je     0x1407a01a9
1407a017e:	8b 41 10             	mov    0x10(%rcx),%eax
1407a0181:	ff c8                	dec    %eax
1407a0183:	89 41 10             	mov    %eax,0x10(%rcx)
1407a0186:	85 c0                	test   %eax,%eax
1407a0188:	7f 17                	jg     0x1407a01a1
1407a018a:	0f 88 c8 00 00 00    	js     0x1407a0258
1407a0190:	48 8b 01             	mov    (%rcx),%rax
1407a0193:	ba 01 00 00 00       	mov    $0x1,%edx
1407a0198:	48 8b 00             	mov    (%rax),%rax
1407a019b:	ff 15 7f 38 7e 00    	call   *0x7e387f(%rip)        # 0x140f83a20
1407a01a1:	48 c7 43 58 00 00 00 	movq   $0x0,0x58(%rbx)
1407a01a8:	00
1407a01a9:	48 8b 07             	mov    (%rdi),%rax
1407a01ac:	48 c7 07 00 00 00 00 	movq   $0x0,(%rdi)
1407a01b3:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
1407a01b8:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
1407a01bd:	48 89 4c 24 40       	mov    %rcx,0x40(%rsp)
1407a01c2:	48 8b 4b 58          	mov    0x58(%rbx),%rcx
1407a01c6:	48 85 c9             	test   %rcx,%rcx
1407a01c9:	74 0f                	je     0x1407a01da
1407a01cb:	45 33 c0             	xor    %r8d,%r8d
1407a01ce:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
1407a01d3:	e8 d8 58 09 00       	call   0x140835ab0
1407a01d8:	eb 0d                	jmp    0x1407a01e7
1407a01da:	48 89 43 58          	mov    %rax,0x58(%rbx)
1407a01de:	48 c7 44 24 30 00 00 	movq   $0x0,0x30(%rsp)
1407a01e5:	00 00
1407a01e7:	48 8b cb             	mov    %rbx,%rcx
1407a01ea:	e8 71 06 00 00       	call   0x1407a0860
1407a01ef:	90                   	nop
1407a01f0:	48 8b 4c 24 30       	mov    0x30(%rsp),%rcx
1407a01f5:	48 85 c9             	test   %rcx,%rcx
1407a01f8:	74 20                	je     0x1407a021a
1407a01fa:	8b 41 10             	mov    0x10(%rcx),%eax
1407a01fd:	ff c8                	dec    %eax
1407a01ff:	89 41 10             	mov    %eax,0x10(%rcx)
1407a0202:	85 c0                	test   %eax,%eax
1407a0204:	7f 14                	jg     0x1407a021a
1407a0206:	78 5b                	js     0x1407a0263
1407a0208:	48 8b 01             	mov    (%rcx),%rax
1407a020b:	ba 01 00 00 00       	mov    $0x1,%edx
1407a0210:	48 8b 00             	mov    (%rax),%rax
1407a0213:	ff 15 07 38 7e 00    	call   *0x7e3807(%rip)        # 0x140f83a20
1407a0219:	90                   	nop
1407a021a:	48 8b 0f             	mov    (%rdi),%rcx
1407a021d:	48 85 c9             	test   %rcx,%rcx
1407a0220:	74 20                	je     0x1407a0242
1407a0222:	8b 41 10             	mov    0x10(%rcx),%eax
1407a0225:	ff c8                	dec    %eax
1407a0227:	89 41 10             	mov    %eax,0x10(%rcx)
1407a022a:	85 c0                	test   %eax,%eax
1407a022c:	7f 14                	jg     0x1407a0242
1407a022e:	78 1d                	js     0x1407a024d
1407a0230:	48 8b 01             	mov    (%rcx),%rax
1407a0233:	ba 01 00 00 00       	mov    $0x1,%edx
1407a0238:	48 8b 00             	mov    (%rax),%rax
1407a023b:	ff 15 df 37 7e 00    	call   *0x7e37df(%rip)        # 0x140f83a20
1407a0241:	90                   	nop
1407a0242:	48 8b 5c 24 48       	mov    0x48(%rsp),%rbx
1407a0247:	48 83 c4 20          	add    $0x20,%rsp
1407a024b:	5f                   	pop    %rdi
1407a024c:	c3                   	ret
1407a024d:	b9 02 00 00 00       	mov    $0x2,%ecx
1407a0252:	e8 a9 a4 fe ff       	call   0x14078a700
1407a0257:	90                   	nop
1407a0258:	b9 02 00 00 00       	mov    $0x2,%ecx
1407a025d:	e8 9e a4 fe ff       	call   0x14078a700
1407a0262:	90                   	nop
1407a0263:	b9 02 00 00 00       	mov    $0x2,%ecx
1407a0268:	e8 93 a4 fe ff       	call   0x14078a700
1407a026d:	cc                   	int3
1407a026e:	cc                   	int3
1407a026f:	cc                   	int3
1407a0270:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
1407a0275:	57                   	push   %rdi
1407a0276:	48 83 ec 20          	sub    $0x20,%rsp
1407a027a:	48 8b d9             	mov    %rcx,%rbx
1407a027d:	33 ff                	xor    %edi,%edi
1407a027f:	40 38 79 43          	cmp    %dil,0x43(%rcx)
1407a0283:	75 5e                	jne    0x1407a02e3
1407a0285:	c6 41 43 01          	movb   $0x1,0x43(%rcx)
1407a0289:	48 8b 49 58          	mov    0x58(%rcx),%rcx
1407a028d:	48 85 c9             	test   %rcx,%rcx
1407a0290:	74 0c                	je     0x1407a029e
1407a0292:	ba 02 00 00 00       	mov    $0x2,%edx
1407a0297:	e8 44 6c 09 00       	call   0x140836ee0
1407a029c:	eb 07                	jmp    0x1407a02a5
1407a029e:	48 8d 05 d3 4d c0 00 	lea    0xc04dd3(%rip),%rax        # 0x1413a5078
1407a02a5:	48 39 38             	cmp    %rdi,(%rax)
1407a02a8:	75 39                	jne    0x1407a02e3
1407a02aa:	b9 28 00 00 00       	mov    $0x28,%ecx
1407a02af:	e8 54 ae 67 00       	call   0x140e1b108
1407a02b4:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
1407a02b9:	48 85 c0             	test   %rax,%rax
1407a02bc:	74 10                	je     0x1407a02ce
1407a02be:	ba 02 00 00 00       	mov    $0x2,%edx
1407a02c3:	48 8b c8             	mov    %rax,%rcx
1407a02c6:	e8 15 4b 09 00       	call   0x140834de0
1407a02cb:	48 8b f8             	mov    %rax,%rdi
1407a02ce:	48 89 7c 24 30       	mov    %rdi,0x30(%rsp)
1407a02d3:	45 33 c0             	xor    %r8d,%r8d
1407a02d6:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
1407a02db:	48 8b cb             	mov    %rbx,%rcx
1407a02de:	e8 ed e2 ff ff       	call   0x14079e5d0
1407a02e3:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
1407a02e8:	48 83 c4 20          	add    $0x20,%rsp
1407a02ec:	5f                   	pop    %rdi
1407a02ed:	c3                   	ret
1407a02ee:	cc                   	int3
1407a02ef:	cc                   	int3
1407a02f0:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
1407a02f5:	53                   	push   %rbx
1407a02f6:	56                   	push   %rsi
1407a02f7:	57                   	push   %rdi
1407a02f8:	48 83 ec 20          	sub    $0x20,%rsp
1407a02fc:	41 8b f0             	mov    %r8d,%esi
1407a02ff:	48 8b fa             	mov    %rdx,%rdi
1407a0302:	48 8b d9             	mov    %rcx,%rbx
1407a0305:	33 d2                	xor    %edx,%edx
1407a0307:	41 83 f8 02          	cmp    $0x2,%r8d
1407a030b:	0f 95 c2             	setne  %dl
1407a030e:	83 c2 03             	add    $0x3,%edx
1407a0311:	48 8b 49 58          	mov    0x58(%rcx),%rcx
1407a0315:	e8 c6 6b 09 00       	call   0x140836ee0
1407a031a:	48 8b c8             	mov    %rax,%rcx
1407a031d:	48 83 38 00          	cmpq   $0x0,(%rax)
1407a0321:	0f 84 e4 00 00 00    	je     0x1407a040b
1407a0327:	48 83 7b 50 00       	cmpq   $0x0,0x50(%rbx)
1407a032c:	75 50                	jne    0x1407a037e
1407a032e:	48 8d 05 07 31 84 00 	lea    0x843107(%rip),%rax        # 0x140fe343c
1407a0335:	48 8d 15 f0 30 84 00 	lea    0x8430f0(%rip),%rdx        # 0x140fe342c
1407a033c:	83 fe 02             	cmp    $0x2,%esi
1407a033f:	48 0f 44 d0          	cmove  %rax,%rdx
1407a0343:	48 8d 0d be c2 88 00 	lea    0x88c2be(%rip),%rcx        # 0x14102c608
1407a034a:	e8 c1 75 0c 00       	call   0x140867910
1407a034f:	48 8b d0             	mov    %rax,%rdx
1407a0352:	4c 8b c3             	mov    %rbx,%r8
1407a0355:	48 8b cb             	mov    %rbx,%rcx
1407a0358:	e8 23 f6 ff ff       	call   0x14079f980
1407a035d:	90                   	nop
1407a035e:	48 8b 0f             	mov    (%rdi),%rcx
1407a0361:	48 85 c9             	test   %rcx,%rcx
1407a0364:	0f 84 83 00 00 00    	je     0x1407a03ed
1407a036a:	8b 41 10             	mov    0x10(%rcx),%eax
1407a036d:	ff c8                	dec    %eax
1407a036f:	89 41 10             	mov    %eax,0x10(%rcx)
1407a0372:	85 c0                	test   %eax,%eax
1407a0374:	7f 77                	jg     0x1407a03ed
1407a0376:	0f 88 84 00 00 00    	js     0x1407a0400
1407a037c:	eb 5d                	jmp    0x1407a03db
1407a037e:	48 8b 07             	mov    (%rdi),%rax
1407a0381:	48 c7 07 00 00 00 00 	movq   $0x0,(%rdi)
1407a0388:	48 89 44 24 40       	mov    %rax,0x40(%rsp)
1407a038d:	48 8b 01             	mov    (%rcx),%rax
1407a0390:	48 8b 48 20          	mov    0x20(%rax),%rcx
1407a0394:	48 89 4c 24 58       	mov    %rcx,0x58(%rsp)
1407a0399:	48 85 c9             	test   %rcx,%rcx
1407a039c:	74 14                	je     0x1407a03b2
1407a039e:	8b 41 10             	mov    0x10(%rcx),%eax
1407a03a1:	ff c0                	inc    %eax
1407a03a3:	89 41 10             	mov    %eax,0x10(%rcx)
1407a03a6:	83 f8 01             	cmp    $0x1,%eax
1407a03a9:	7e 70                	jle    0x1407a041b
1407a03ab:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
1407a03b0:	74 71                	je     0x1407a0423
1407a03b2:	4c 8d 44 24 40       	lea    0x40(%rsp),%r8
1407a03b7:	48 8d 54 24 58       	lea    0x58(%rsp),%rdx
1407a03bc:	48 8b cb             	mov    %rbx,%rcx
1407a03bf:	e8 5c f6 ff ff       	call   0x14079fa20
1407a03c4:	90                   	nop
1407a03c5:	48 8b 0f             	mov    (%rdi),%rcx
1407a03c8:	48 85 c9             	test   %rcx,%rcx
1407a03cb:	74 20                	je     0x1407a03ed
1407a03cd:	8b 41 10             	mov    0x10(%rcx),%eax
1407a03d0:	ff c8                	dec    %eax
1407a03d2:	89 41 10             	mov    %eax,0x10(%rcx)
1407a03d5:	85 c0                	test   %eax,%eax
1407a03d7:	7f 14                	jg     0x1407a03ed
1407a03d9:	78 1a                	js     0x1407a03f5
1407a03db:	48 8b 01             	mov    (%rcx),%rax
1407a03de:	ba 01 00 00 00       	mov    $0x1,%edx
1407a03e3:	48 8b 00             	mov    (%rax),%rax
1407a03e6:	ff 15 34 36 7e 00    	call   *0x7e3634(%rip)        # 0x140f83a20
1407a03ec:	90                   	nop
1407a03ed:	48 83 c4 20          	add    $0x20,%rsp
1407a03f1:	5f                   	pop    %rdi
1407a03f2:	5e                   	pop    %rsi
1407a03f3:	5b                   	pop    %rbx
1407a03f4:	c3                   	ret
1407a03f5:	b9 02 00 00 00       	mov    $0x2,%ecx
1407a03fa:	e8 01 a3 fe ff       	call   0x14078a700
1407a03ff:	90                   	nop
1407a0400:	b9 02 00 00 00       	mov    $0x2,%ecx
1407a0405:	e8 f6 a2 fe ff       	call   0x14078a700
1407a040a:	90                   	nop
1407a040b:	48 8d 15 ce c1 88 00 	lea    0x88c1ce(%rip),%rdx        # 0x14102c5e0
1407a0412:	48 8b cb             	mov    %rbx,%rcx
1407a0415:	e8 76 9f fe ff       	call   0x14078a390
1407a041a:	90                   	nop
1407a041b:	33 c9                	xor    %ecx,%ecx
1407a041d:	e8 de a2 fe ff       	call   0x14078a700
1407a0422:	cc                   	int3
1407a0423:	b9 01 00 00 00       	mov    $0x1,%ecx
1407a0428:	e8 d3 a2 fe ff       	call   0x14078a700
1407a042d:	cc                   	int3
1407a042e:	cc                   	int3
1407a042f:	cc                   	int3
1407a0430:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
1407a0435:	53                   	push   %rbx
1407a0436:	56                   	push   %rsi
1407a0437:	57                   	push   %rdi
1407a0438:	48 83 ec 40          	sub    $0x40,%rsp
1407a043c:	48 8b f2             	mov    %rdx,%rsi
1407a043f:	48 8b d9             	mov    %rcx,%rbx
1407a0442:	4c 8b 41 50          	mov    0x50(%rcx),%r8
1407a0446:	48 8b 02             	mov    (%rdx),%rax
1407a0449:	48 89 41 50          	mov    %rax,0x50(%rcx)
1407a044d:	4c 89 02             	mov    %r8,(%rdx)
1407a0450:	48 8d 51 18          	lea    0x18(%rcx),%rdx
1407a0454:	48 83 7a 08 00       	cmpq   $0x0,0x8(%rdx)
1407a0459:	74 0c                	je     0x1407a0467
1407a045b:	48 8d 0d 7e 05 c9 00 	lea    0xc9057e(%rip),%rcx        # 0x1414309e0
1407a0462:	e8 d9 a6 fe ff       	call   0x14078ab40
1407a0467:	48 8b 4b 38          	mov    0x38(%rbx),%rcx
1407a046b:	48 85 c9             	test   %rcx,%rcx
1407a046e:	0f 84 d8 01 00 00    	je     0x1407a064c
1407a0474:	48 83 7b 50 00       	cmpq   $0x0,0x50(%rbx)
1407a0479:	0f 84 cd 01 00 00    	je     0x1407a064c
1407a047f:	83 79 18 11          	cmpl   $0x11,0x18(%rcx)
1407a0483:	0f 85 c3 01 00 00    	jne    0x1407a064c
1407a0489:	e8 12 a0 fa ff       	call   0x14074a4a0
1407a048e:	83 78 58 01          	cmpl   $0x1,0x58(%rax)
1407a0492:	0f 85 b4 01 00 00    	jne    0x1407a064c
1407a0498:	48 8b 4b 28          	mov    0x28(%rbx),%rcx
1407a049c:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
1407a04a1:	48 c7 c0 ff ff ff ff 	mov    $0xffffffffffffffff,%rax
1407a04a8:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
1407a04af:	00
1407a04b0:	48 ff c0             	inc    %rax
1407a04b3:	80 3c 01 00          	cmpb   $0x0,(%rcx,%rax,1)
1407a04b7:	75 f7                	jne    0x1407a04b0
1407a04b9:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
1407a04be:	0f 28 44 24 20       	movaps 0x20(%rsp),%xmm0
1407a04c3:	66 0f 7f 44 24 20    	movdqa %xmm0,0x20(%rsp)
1407a04c9:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
1407a04ce:	48 8b 0d 8b 29 c9 00 	mov    0xc9298b(%rip),%rcx        # 0x141432e60
1407a04d5:	e8 76 3c 07 00       	call   0x140814150
1407a04da:	48 8b f8             	mov    %rax,%rdi
1407a04dd:	48 8d 54 24 60       	lea    0x60(%rsp),%rdx
1407a04e2:	48 8b 4b 50          	mov    0x50(%rbx),%rcx
1407a04e6:	e8 a5 41 f9 ff       	call   0x140734690