14003610b:	0f 84 4f 01 00 00    	je     0x140036260
140036111:	44 8b 45 d0          	mov    -0x30(%rbp),%r8d
140036115:	41 83 f8 04          	cmp    $0x4,%r8d
140036119:	76 05                	jbe    0x140036120
14003611b:	8a 03                	mov    (%rbx),%al
14003611d:	88 46 0c             	mov    %al,0xc(%rsi)
140036120:	41 b4 02             	mov    $0x2,%r12b
140036123:	45 3b c1             	cmp    %r9d,%r8d
140036126:	0f 82 dd 00 00 00    	jb     0x140036209
14003612c:	44 38 66 0c          	cmp    %r12b,0xc(%rsi)
140036130:	0f 85 d3 00 00 00    	jne    0x140036209
140036136:	66 44 39 4b 02       	cmp    %r9w,0x2(%rbx)
14003613b:	0f 82 c8 00 00 00    	jb     0x140036209
140036141:	44 0f b7 53 04       	movzwl 0x4(%rbx),%r10d
140036146:	0f b7 4b 06          	movzwl 0x6(%rbx),%ecx
14003614a:	48 c1 e1 04          	shl    $0x4,%rcx
14003614e:	4b 8d 04 52          	lea    (%r10,%r10,2),%rax
140036152:	48 8d 14 81          	lea    (%rcx,%rax,4),%rdx
140036156:	0f b7 43 02          	movzwl 0x2(%rbx),%eax
14003615a:	48 03 d0             	add    %rax,%rdx
14003615d:	4c 3b c2             	cmp    %rdx,%r8
140036160:	0f 82 a3 00 00 00    	jb     0x140036209
140036166:	89 7d d4             	mov    %edi,-0x2c(%rbp)
140036169:	44 8b cf             	mov    %edi,%r9d
14003616c:	66 45 85 d2          	test   %r10w,%r10w
140036170:	74 3c                	je     0x1400361ae
140036172:	39 7d e0             	cmp    %edi,-0x20(%rbp)
140036175:	4c 8d 4d d4          	lea    -0x2c(%rbp),%r9
140036179:	48 8b 05 c0 27 05 00 	mov    0x527c0(%rip),%rax        # 0x140088940
140036180:	48 8d 4d e0          	lea    -0x20(%rbp),%rcx
140036184:	48 0f 44 05 8c 27 05 	cmove  0x5278c(%rip),%rax        # 0x140088918
14003618b:	00
14003618c:	48 89 45 e0          	mov    %rax,-0x20(%rbp)
140036190:	48 8d 45 d8          	lea    -0x28(%rbp),%rax
140036194:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140036199:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
14003619e:	89 7d d8             	mov    %edi,-0x28(%rbp)
1400361a1:	e8 4e f7 ff ff       	call   0x1400358f4
1400361a6:	44 8b 45 d0          	mov    -0x30(%rbp),%r8d
1400361aa:	44 8b 4d d4          	mov    -0x2c(%rbp),%r9d
1400361ae:	48 8d 53 10          	lea    0x10(%rbx),%rdx
1400361b2:	48 89 5e 18          	mov    %rbx,0x18(%rsi)
1400361b6:	48 89 56 20          	mov    %rdx,0x20(%rsi)
1400361ba:	45 85 c9             	test   %r9d,%r9d
1400361bd:	0f b7 43 04          	movzwl 0x4(%rbx),%eax
1400361c1:	48 8d 0c 40          	lea    (%rax,%rax,2),%rcx
1400361c5:	48 8d 04 8a          	lea    (%rdx,%rcx,4),%rax
1400361c9:	48 89 46 28          	mov    %rax,0x28(%rsi)
1400361cd:	8b c7                	mov    %edi,%eax
1400361cf:	0f 95 c0             	setne  %al
1400361d2:	89 46 30             	mov    %eax,0x30(%rsi)
1400361d5:	44 38 23             	cmp    %r12b,(%rbx)
1400361d8:	75 62                	jne    0x14003623c
1400361da:	44 38 63 01          	cmp    %r12b,0x1(%rbx)
1400361de:	73 5c                	jae    0x14003623c
1400361e0:	0f b7 43 04          	movzwl 0x4(%rbx),%eax
1400361e4:	0f b7 53 06          	movzwl 0x6(%rbx),%edx
1400361e8:	c1 e2 04             	shl    $0x4,%edx
1400361eb:	8d 0c 40             	lea    (%rax,%rax,2),%ecx
1400361ee:	0f b7 43 02          	movzwl 0x2(%rbx),%eax
1400361f2:	c7 46 10 01 00 00 00 	movl   $0x1,0x10(%rsi)
1400361f9:	44 8d 04 8a          	lea    (%rdx,%rcx,4),%r8d
1400361fd:	44 03 c0             	add    %eax,%r8d
140036200:	eb 3a                	jmp    0x14003623c
140036202:	b8 9a 00 00 c0       	mov    $0xc000009a,%eax
140036207:	eb 7f                	jmp    0x140036288
140036209:	44 89 4d d0          	mov    %r9d,-0x30(%rbp)
14003620d:	0f 57 c0             	xorps  %xmm0,%xmm0
140036210:	0f 11 03             	movups %xmm0,(%rbx)
140036213:	c7 03 02 02 10 00    	movl   $0x100202,(%rbx)
140036219:	44 8b 45 d0          	mov    -0x30(%rbp),%r8d
14003621d:	48 89 5e 18          	mov    %rbx,0x18(%rsi)
140036221:	0f b7 53 02          	movzwl 0x2(%rbx),%edx
140036225:	48 03 d3             	add    %rbx,%rdx
140036228:	48 89 56 20          	mov    %rdx,0x20(%rsi)
14003622c:	0f b7 43 04          	movzwl 0x4(%rbx),%eax
140036230:	48 8d 0c 40          	lea    (%rax,%rax,2),%rcx
140036234:	48 8d 04 8a          	lea    (%rdx,%rcx,4),%rax
140036238:	48 89 46 28          	mov    %rax,0x28(%rsi)
14003623c:	4d 85 ff             	test   %r15,%r15
14003623f:	41 8b c0             	mov    %r8d,%eax
140036242:	48 89 46 40          	mov    %rax,0x40(%rsi)
140036246:	4d 0f 45 ee          	cmovne %r14,%r13
14003624a:	48 89 5e 38          	mov    %rbx,0x38(%rsi)
14003624e:	49 3b df             	cmp    %r15,%rbx
140036251:	4c 89 6e 48          	mov    %r13,0x48(%rsi)
140036255:	40 0f 94 c7          	sete   %dil
140036259:	33 c0                	xor    %eax,%eax
14003625b:	89 7e 50             	mov    %edi,0x50(%rsi)
14003625e:	eb 28                	jmp    0x140036288
140036260:	4d 85 ff             	test   %r15,%r15
140036263:	74 20                	je     0x140036285
140036265:	48 ff 15 a4 e8 04 00 	rex.W call *0x4e8a4(%rip)        # 0x140084b10
14003626c:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140036271:	4d 8b c7             	mov    %r15,%r8
140036274:	33 d2                	xor    %edx,%edx
140036276:	48 8b c8             	mov    %rax,%rcx
140036279:	48 ff 15 98 e8 04 00 	rex.W call *0x4e898(%rip)        # 0x140084b18
140036280:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140036285:	41 8b c4             	mov    %r12d,%eax
140036288:	48 8b 4d f0          	mov    -0x10(%rbp),%rcx
14003628c:	48 33 cc             	xor    %rsp,%rcx
14003628f:	e8 1c d9 ff ff       	call   0x140033bb0
140036294:	48 8b 9c 24 a8 00 00 	mov    0xa8(%rsp),%rbx
14003629b:	00
14003629c:	48 83 c4 60          	add    $0x60,%rsp
1400362a0:	41 5f                	pop    %r15
1400362a2:	41 5e                	pop    %r14
1400362a4:	41 5d                	pop    %r13
1400362a6:	41 5c                	pop    %r12
1400362a8:	5f                   	pop    %rdi
1400362a9:	5e                   	pop    %rsi
1400362aa:	5d                   	pop    %rbp
1400362ab:	c3                   	ret
1400362ac:	cc                   	int3
1400362ad:	cc                   	int3
1400362ae:	cc                   	int3
1400362af:	cc                   	int3
1400362b0:	cc                   	int3
1400362b1:	cc                   	int3
1400362b2:	cc                   	int3
1400362b3:	cc                   	int3
1400362b4:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1400362b9:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
1400362be:	48 89 7c 24 18       	mov    %rdi,0x18(%rsp)
1400362c3:	55                   	push   %rbp
1400362c4:	41 54                	push   %r12
1400362c6:	41 55                	push   %r13
1400362c8:	41 56                	push   %r14
1400362ca:	41 57                	push   %r15
1400362cc:	48 8b ec             	mov    %rsp,%rbp
1400362cf:	48 83 ec 30          	sub    $0x30,%rsp
1400362d3:	4c 8b 79 18          	mov    0x18(%rcx),%r15
1400362d7:	45 33 d2             	xor    %r10d,%r10d
1400362da:	4c 8b 59 20          	mov    0x20(%rcx),%r11
1400362de:	48 8b da             	mov    %rdx,%rbx
1400362e1:	45 8b e0             	mov    %r8d,%r12d
1400362e4:	48 8b f1             	mov    %rcx,%rsi
1400362e7:	41 8b fa             	mov    %r10d,%edi
1400362ea:	41 8b d2             	mov    %r10d,%edx
1400362ed:	45 0f b7 77 04       	movzwl 0x4(%r15),%r14d
1400362f2:	45 8d 6a 01          	lea    0x1(%r10),%r13d
1400362f6:	45 85 f6             	test   %r14d,%r14d
1400362f9:	74 5c                	je     0x140036357
1400362fb:	8b ca                	mov    %edx,%ecx
1400362fd:	48 8d 04 49          	lea    (%rcx,%rcx,2),%rax
140036301:	45 39 24 83          	cmp    %r12d,(%r11,%rax,4)
140036305:	75 48                	jne    0x14003634f
140036307:	45 85 c9             	test   %r9d,%r9d
14003630a:	74 26                	je     0x140036332
14003630c:	44 39 56 30          	cmp    %r10d,0x30(%rsi)
140036310:	74 20                	je     0x140036332
140036312:	45 84 6c 83 04       	test   %r13b,0x4(%r11,%rax,4)
140036317:	75 36                	jne    0x14003634f
140036319:	48 8d 04 49          	lea    (%rcx,%rcx,2),%rax
14003631d:	f2 41 0f 10 04 83    	movsd  (%r11,%rax,4),%xmm0
140036323:	41 8b 44 83 08       	mov    0x8(%r11,%rax,4),%eax
140036328:	f2 0f 11 45 f0       	movsd  %xmm0,-0x10(%rbp)
14003632d:	89 45 f8             	mov    %eax,-0x8(%rbp)
140036330:	eb 30                	jmp    0x140036362
140036332:	f2 41 0f 10 04 83    	movsd  (%r11,%rax,4),%xmm0
140036338:	41 8b fd             	mov    %r13d,%edi
14003633b:	45 84 6c 83 04       	test   %r13b,0x4(%r11,%rax,4)
140036340:	41 8b 44 83 08       	mov    0x8(%r11,%rax,4),%eax
140036345:	f2 0f 11 45 f0       	movsd  %xmm0,-0x10(%rbp)
14003634a:	89 45 f8             	mov    %eax,-0x8(%rbp)
14003634d:	75 08                	jne    0x140036357
14003634f:	41 03 d5             	add    %r13d,%edx
140036352:	41 3b d6             	cmp    %r14d,%edx
140036355:	72 a4                	jb     0x1400362fb
140036357:	45 8b c2             	mov    %r10d,%r8d
14003635a:	85 ff                	test   %edi,%edi
14003635c:	0f 84 b6 00 00 00    	je     0x140036418
140036362:	45 85 c9             	test   %r9d,%r9d
140036365:	74 0b                	je     0x140036372
140036367:	b8 0c 00 00 00       	mov    $0xc,%eax
14003636c:	44 39 56 30          	cmp    %r10d,0x30(%rsi)
140036370:	75 05                	jne    0x140036377
140036372:	b8 08 00 00 00       	mov    $0x8,%eax
140036377:	42 8b 04 38          	mov    (%rax,%r15,1),%eax
14003637b:	a8 04                	test   $0x4,%al
14003637d:	74 13                	je     0x140036392
14003637f:	48 8b 55 f0          	mov    -0x10(%rbp),%rdx
140036383:	48 c1 ea 20          	shr    $0x20,%rdx
140036387:	81 e2 ff cf ff ff    	and    $0xffffcfff,%edx
14003638d:	89 55 f4             	mov    %edx,-0xc(%rbp)
140036390:	eb 03                	jmp    0x140036395
140036392:	8b 55 f4             	mov    -0xc(%rbp),%edx
140036395:	a8 02                	test   $0x2,%al
140036397:	74 09                	je     0x1400363a2
140036399:	81 e2 ff f3 ff ff    	and    $0xfffff3ff,%edx
14003639f:	89 55 f4             	mov    %edx,-0xc(%rbp)
1400363a2:	41 84 c5             	test   %al,%r13b
1400363a5:	74 09                	je     0x1400363b0
1400363a7:	81 e2 ff fc ff ff    	and    $0xfffffcff,%edx
1400363ad:	89 55 f4             	mov    %edx,-0xc(%rbp)
1400363b0:	a8 08                	test   $0x8,%al
1400363b2:	74 0d                	je     0x1400363c1
1400363b4:	81 e2 ff ff ff c0    	and    $0xc0ffffff,%edx
1400363ba:	44 89 55 f8          	mov    %r10d,-0x8(%rbp)
1400363be:	89 55 f4             	mov    %edx,-0xc(%rbp)
1400363c1:	48 8d 4d f0          	lea    -0x10(%rbp),%rcx
1400363c5:	45 8b c2             	mov    %r10d,%r8d
1400363c8:	e8 17 f9 ff ff       	call   0x140035ce4
1400363cd:	85 c0                	test   %eax,%eax
1400363cf:	74 47                	je     0x140036418
1400363d1:	8b 45 f8             	mov    -0x8(%rbp),%eax
1400363d4:	89 43 0c             	mov    %eax,0xc(%rbx)
1400363d7:	8b c2                	mov    %edx,%eax
1400363d9:	c1 e8 1e             	shr    $0x1e,%eax
1400363dc:	89 43 08             	mov    %eax,0x8(%rbx)
1400363df:	8b c2                	mov    %edx,%eax
1400363e1:	c1 e8 18             	shr    $0x18,%eax
1400363e4:	24 3f                	and    $0x3f,%al
1400363e6:	88 43 04             	mov    %al,0x4(%rbx)
1400363e9:	8b c2                	mov    %edx,%eax
1400363eb:	d1 e8                	shr    $1,%eax
1400363ed:	41 23 c5             	and    %r13d,%eax
1400363f0:	89 43 14             	mov    %eax,0x14(%rbx)
1400363f3:	8b c2                	mov    %edx,%eax
1400363f5:	c1 e8 0c             	shr    $0xc,%eax
1400363f8:	83 e0 03             	and    $0x3,%eax
1400363fb:	75 0a                	jne    0x140036407
1400363fd:	8b c2                	mov    %edx,%eax
1400363ff:	c1 e8 0a             	shr    $0xa,%eax
140036402:	83 e0 03             	and    $0x3,%eax
140036405:	74 04                	je     0x14003640b
140036407:	89 03                	mov    %eax,(%rbx)
140036409:	eb 0a                	jmp    0x140036415
14003640b:	c1 ea 08             	shr    $0x8,%edx
14003640e:	83 e2 03             	and    $0x3,%edx
140036411:	74 02                	je     0x140036415
140036413:	89 13                	mov    %edx,(%rbx)
140036415:	45 8b c5             	mov    %r13d,%r8d
140036418:	41 0f b7 57 06       	movzwl 0x6(%r15),%edx
14003641d:	41 8b ca             	mov    %r10d,%ecx
140036420:	48 8b 46 28          	mov    0x28(%rsi),%rax
140036424:	85 d2                	test   %edx,%edx
140036426:	74 15                	je     0x14003643d
140036428:	44 39 20             	cmp    %r12d,(%rax)
14003642b:	74 0d                	je     0x14003643a
14003642d:	41 03 cd             	add    %r13d,%ecx
140036430:	48 83 c0 10          	add    $0x10,%rax
140036434:	3b ca                	cmp    %edx,%ecx
140036436:	72 f0                	jb     0x140036428
140036438:	eb 03                	jmp    0x14003643d
14003643a:	45 8b d5             	mov    %r13d,%r10d
14003643d:	48 8b 74 24 68       	mov    0x68(%rsp),%rsi
140036442:	41 8b c0             	mov    %r8d,%eax
140036445:	48 8b 7c 24 70       	mov    0x70(%rsp),%rdi
14003644a:	44 89 53 10          	mov    %r10d,0x10(%rbx)
14003644e:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
140036453:	48 83 c4 30          	add    $0x30,%rsp
140036457:	41 5f                	pop    %r15
140036459:	41 5e                	pop    %r14
14003645b:	41 5d                	pop    %r13
14003645d:	41 5c                	pop    %r12
14003645f:	5d                   	pop    %rbp
140036460:	c3                   	ret
140036461:	cc                   	int3
140036462:	cc                   	int3
140036463:	cc                   	int3
140036464:	cc                   	int3
140036465:	cc                   	int3
140036466:	cc                   	int3
140036467:	cc                   	int3
140036468:	cc                   	int3
140036469:	cc                   	int3
14003646a:	cc                   	int3
14003646b:	cc                   	int3
14003646c:	cc                   	int3
14003646d:	cc                   	int3
14003646e:	cc                   	int3
14003646f:	cc                   	int3
140036470:	48 8b ca             	mov    %rdx,%rcx
140036473:	e9 24 d1 fc ff       	jmp    0x14000359c
140036478:	cc                   	int3
140036479:	cc                   	int3
14003647a:	cc                   	int3
14003647b:	cc                   	int3
14003647c:	cc                   	int3
14003647d:	cc                   	int3
14003647e:	cc                   	int3
14003647f:	cc                   	int3
140036480:	48 8b c4             	mov    %rsp,%rax
140036483:	53                   	push   %rbx
140036484:	48 83 ec 50          	sub    $0x50,%rsp
140036488:	4c 8b d9             	mov    %rcx,%r11
14003648b:	8b da                	mov    %edx,%ebx
14003648d:	8b 94 24 88 00 00 00 	mov    0x88(%rsp),%edx
140036494:	b9 03 00 00 00       	mov    $0x3,%ecx
140036499:	89 48 38             	mov    %ecx,0x38(%rax)
14003649c:	45 8b d0             	mov    %r8d,%r10d
14003649f:	e8 d4 04 00 00       	call   0x140036978
1400364a4:	45 8b c2             	mov    %r10d,%r8d
1400364a7:	89 44 24 20          	mov    %eax,0x20(%rsp)
1400364ab:	8b d3                	mov    %ebx,%edx
1400364ad:	49 8b cb             	mov    %r11,%rcx
1400364b0:	e8 5b 00 00 00       	call   0x140036510
1400364b5:	85 c0                	test   %eax,%eax
1400364b7:	74 48                	je     0x140036501
1400364b9:	48 8b 05 b0 a8 06 00 	mov    0x6a8b0(%rip),%rax        # 0x1400a0d70
1400364c0:	48 85 c0             	test   %rax,%rax
1400364c3:	74 3c                	je     0x140036501
1400364c5:	44 8b 8c 24 88 00 00 	mov    0x88(%rsp),%r9d
1400364cc:	00
1400364cd:	48 8d 8c 24 90 00 00 	lea    0x90(%rsp),%rcx
1400364d4:	00
1400364d5:	48 8b 94 24 80 00 00 	mov    0x80(%rsp),%rdx
1400364dc:	00
1400364dd:	45 33 c0             	xor    %r8d,%r8d
1400364e0:	48 c7 44 24 38 01 00 	movq   $0x1,0x38(%rsp)
1400364e7:	00 00
1400364e9:	c6 44 24 30 00       	movb   $0x0,0x30(%rsp)
1400364ee:	48 83 64 24 28 00    	andq   $0x0,0x28(%rsp)
1400364f4:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
1400364f9:	8b cb                	mov    %ebx,%ecx
1400364fb:	ff 15 c7 f1 04 00    	call   *0x4f1c7(%rip)        # 0x1400856c8
140036501:	48 83 c4 50          	add    $0x50,%rsp
140036505:	5b                   	pop    %rbx
140036506:	c3                   	ret
140036507:	cc                   	int3
140036508:	cc                   	int3
140036509:	cc                   	int3
14003650a:	cc                   	int3
14003650b:	cc                   	int3
14003650c:	cc                   	int3
14003650d:	cc                   	int3
14003650e:	cc                   	int3
14003650f:	cc                   	int3
140036510:	48 8b c4             	mov    %rsp,%rax
140036513:	48 89 58 08          	mov    %rbx,0x8(%rax)
140036517:	48 89 68 10          	mov    %rbp,0x10(%rax)
14003651b:	48 89 70 18          	mov    %rsi,0x18(%rax)
14003651f:	57                   	push   %rdi
140036520:	41 56                	push   %r14
140036522:	41 57                	push   %r15
140036524:	48 83 ec 60          	sub    $0x60,%rsp
140036528:	8b bc 24 a0 00 00 00 	mov    0xa0(%rsp),%edi
14003652f:	8b f2                	mov    %edx,%esi
140036531:	48 8b d1             	mov    %rcx,%rdx
140036534:	45 8b f0             	mov    %r8d,%r14d
140036537:	48 8b e9             	mov    %rcx,%rbp
14003653a:	44 8b c7             	mov    %edi,%r8d
14003653d:	48 8d 48 d0          	lea    -0x30(%rax),%rcx
140036541:	45 8b f9             	mov    %r9d,%r15d
140036544:	e8 d3 02 00 00       	call   0x14003681c
140036549:	33 db                	xor    %ebx,%ebx
14003654b:	0f 10 08             	movups (%rax),%xmm1
14003654e:	f2 0f 10 40 10       	movsd  0x10(%rax),%xmm0