470290:	cc                   	int3
470291:	cc                   	int3
470292:	cc                   	int3
470293:	cc                   	int3
470294:	cc                   	int3
470295:	cc                   	int3
470296:	cc                   	int3
470297:	cc                   	int3
470298:	cc                   	int3
470299:	cc                   	int3
47029a:	cc                   	int3
47029b:	cc                   	int3
47029c:	cc                   	int3
47029d:	cc                   	int3
47029e:	cc                   	int3
47029f:	cc                   	int3
4702a0:	55                   	push   %ebp
4702a1:	8b ec                	mov    %esp,%ebp
4702a3:	6a ff                	push   $0xffffffff
4702a5:	68 f0 21 65 00       	push   $0x6521f0
4702aa:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
4702b0:	50                   	push   %eax
4702b1:	81 ec 80 00 00 00    	sub    $0x80,%esp
4702b7:	a1 d4 89 72 00       	mov    0x7289d4,%eax
4702bc:	33 c5                	xor    %ebp,%eax
4702be:	89 45 f0             	mov    %eax,-0x10(%ebp)
4702c1:	56                   	push   %esi
4702c2:	57                   	push   %edi
4702c3:	50                   	push   %eax
4702c4:	8d 45 f4             	lea    -0xc(%ebp),%eax
4702c7:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
4702cd:	8b f9                	mov    %ecx,%edi
4702cf:	89 7d 90             	mov    %edi,-0x70(%ebp)
4702d2:	8b 75 20             	mov    0x20(%ebp),%esi
4702d5:	89 b5 78 ff ff ff    	mov    %esi,-0x88(%ebp)
4702db:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
4702e2:	85 f6                	test   %esi,%esi
4702e4:	0f 84 d2 13 00 00    	je     0x4716bc
4702ea:	8b 46 1c             	mov    0x1c(%esi),%eax
4702ed:	ba 04 00 00 00       	mov    $0x4,%edx
4702f2:	89 45 a0             	mov    %eax,-0x60(%ebp)
4702f5:	85 c0                	test   %eax,%eax
4702f7:	0f 84 14 09 00 00    	je     0x470c11
4702fd:	33 c9                	xor    %ecx,%ecx
4702ff:	40                   	inc    %eax
470300:	f7 e2                	mul    %edx
470302:	0f 90 c1             	seto   %cl
470305:	f7 d9                	neg    %ecx
470307:	0b c8                	or     %eax,%ecx
470309:	51                   	push   %ecx
47030a:	e8 71 0d 17 00       	call   0x5e1080
47030f:	89 87 4c 03 00 00    	mov    %eax,0x34c(%edi)
470315:	83 c4 04             	add    $0x4,%esp
470318:	8b 4e 18             	mov    0x18(%esi),%ecx
47031b:	89 4d 80             	mov    %ecx,-0x80(%ebp)
47031e:	8b 31                	mov    (%ecx),%esi
470320:	3b f1                	cmp    %ecx,%esi
470322:	0f 84 39 06 00 00    	je     0x470961
470328:	c7 45 94 00 00 00 00 	movl   $0x0,-0x6c(%ebp)
47032f:	90                   	nop
470330:	6a 0c                	push   $0xc
470332:	e8 0b 0d 17 00       	call   0x5e1042
470337:	8b 8f 4c 03 00 00    	mov    0x34c(%edi),%ecx
47033d:	83 c4 04             	add    $0x4,%esp
470340:	8b 55 94             	mov    -0x6c(%ebp),%edx
470343:	89 04 0a             	mov    %eax,(%edx,%ecx,1)
470346:	8d 4e 10             	lea    0x10(%esi),%ecx
470349:	83 79 14 10          	cmpl   $0x10,0x14(%ecx)
47034d:	89 4d 9c             	mov    %ecx,-0x64(%ebp)
470350:	72 05                	jb     0x470357
470352:	8b 09                	mov    (%ecx),%ecx
470354:	89 4d 9c             	mov    %ecx,-0x64(%ebp)
470357:	8b 4d 94             	mov    -0x6c(%ebp),%ecx
47035a:	8b 87 4c 03 00 00    	mov    0x34c(%edi),%eax
470360:	8b 56 20             	mov    0x20(%esi),%edx
470363:	89 55 a4             	mov    %edx,-0x5c(%ebp)
470366:	8b 04 01             	mov    (%ecx,%eax,1),%eax
470369:	8b 4d 9c             	mov    -0x64(%ebp),%ecx
47036c:	89 45 98             	mov    %eax,-0x68(%ebp)
47036f:	85 c0                	test   %eax,%eax
470371:	74 25                	je     0x470398
470373:	85 c9                	test   %ecx,%ecx
470375:	74 21                	je     0x470398
470377:	8d 7a 01             	lea    0x1(%edx),%edi
47037a:	57                   	push   %edi
47037b:	e8 00 0d 17 00       	call   0x5e1080
470380:	ff 75 a4             	push   -0x5c(%ebp)
470383:	8b 4d 98             	mov    -0x68(%ebp),%ecx
470386:	ff 75 9c             	push   -0x64(%ebp)
470389:	57                   	push   %edi
47038a:	50                   	push   %eax
47038b:	89 01                	mov    %eax,(%ecx)
47038d:	e8 ee 81 ff ff       	call   0x468580
470392:	8b 7d 90             	mov    -0x70(%ebp),%edi
470395:	83 c4 14             	add    $0x14,%esp
470398:	6a 08                	push   $0x8
47039a:	e8 a3 0c 17 00       	call   0x5e1042
47039f:	8b 8f 4c 03 00 00    	mov    0x34c(%edi),%ecx
4703a5:	83 c4 04             	add    $0x4,%esp
4703a8:	8b 55 94             	mov    -0x6c(%ebp),%edx
4703ab:	8b 0c 11             	mov    (%ecx,%edx,1),%ecx
4703ae:	89 41 04             	mov    %eax,0x4(%ecx)
4703b1:	8d 4e 28             	lea    0x28(%esi),%ecx
4703b4:	83 79 14 10          	cmpl   $0x10,0x14(%ecx)
4703b8:	89 4d 9c             	mov    %ecx,-0x64(%ebp)
4703bb:	72 05                	jb     0x4703c2
4703bd:	8b 09                	mov    (%ecx),%ecx
4703bf:	89 4d 9c             	mov    %ecx,-0x64(%ebp)
4703c2:	8b 46 38             	mov    0x38(%esi),%eax
4703c5:	8b 97 4c 03 00 00    	mov    0x34c(%edi),%edx
4703cb:	89 45 a4             	mov    %eax,-0x5c(%ebp)
4703ce:	8b 45 94             	mov    -0x6c(%ebp),%eax
4703d1:	8b 04 02             	mov    (%edx,%eax,1),%eax
4703d4:	8b 40 04             	mov    0x4(%eax),%eax
4703d7:	89 45 98             	mov    %eax,-0x68(%ebp)
4703da:	85 c0                	test   %eax,%eax
4703dc:	74 2c                	je     0x47040a
4703de:	85 c9                	test   %ecx,%ecx
4703e0:	74 28                	je     0x47040a
4703e2:	8b 7d a4             	mov    -0x5c(%ebp),%edi
4703e5:	47                   	inc    %edi
4703e6:	57                   	push   %edi
4703e7:	e8 94 0c 17 00       	call   0x5e1080
4703ec:	ff 75 a4             	push   -0x5c(%ebp)
4703ef:	8b 4d 98             	mov    -0x68(%ebp),%ecx
4703f2:	ff 75 9c             	push   -0x64(%ebp)
4703f5:	57                   	push   %edi
4703f6:	50                   	push   %eax
4703f7:	89 01                	mov    %eax,(%ecx)
4703f9:	e8 82 81 ff ff       	call   0x468580
4703fe:	8b 7d 90             	mov    -0x70(%ebp),%edi
470401:	83 c4 14             	add    $0x14,%esp
470404:	8b 97 4c 03 00 00    	mov    0x34c(%edi),%edx
47040a:	83 7e 54 10          	cmpl   $0x10,0x54(%esi)
47040e:	8d 4e 40             	lea    0x40(%esi),%ecx
470411:	89 4d 9c             	mov    %ecx,-0x64(%ebp)
470414:	72 05                	jb     0x47041b
470416:	8b 09                	mov    (%ecx),%ecx
470418:	89 4d 9c             	mov    %ecx,-0x64(%ebp)
47041b:	8b 46 50             	mov    0x50(%esi),%eax
47041e:	89 45 a4             	mov    %eax,-0x5c(%ebp)
470421:	8b 45 94             	mov    -0x6c(%ebp),%eax
470424:	8b 04 02             	mov    (%edx,%eax,1),%eax
470427:	8b 40 04             	mov    0x4(%eax),%eax
47042a:	83 c0 04             	add    $0x4,%eax
47042d:	89 45 98             	mov    %eax,-0x68(%ebp)
470430:	74 26                	je     0x470458
470432:	85 c9                	test   %ecx,%ecx
470434:	74 22                	je     0x470458
470436:	8b 7d a4             	mov    -0x5c(%ebp),%edi
470439:	47                   	inc    %edi
47043a:	57                   	push   %edi
47043b:	e8 40 0c 17 00       	call   0x5e1080
470440:	ff 75 a4             	push   -0x5c(%ebp)
470443:	8b 4d 98             	mov    -0x68(%ebp),%ecx
470446:	ff 75 9c             	push   -0x64(%ebp)
470449:	57                   	push   %edi
47044a:	50                   	push   %eax
47044b:	89 01                	mov    %eax,(%ecx)
47044d:	e8 2e 81 ff ff       	call   0x468580
470452:	8b 7d 90             	mov    -0x70(%ebp),%edi
470455:	83 c4 14             	add    $0x14,%esp
470458:	8b 4e 5c             	mov    0x5c(%esi),%ecx
47045b:	b8 31 0c c3 30       	mov    $0x30c30c31,%eax
470460:	2b 4e 58             	sub    0x58(%esi),%ecx
470463:	f7 e9                	imul   %ecx
470465:	33 c9                	xor    %ecx,%ecx
470467:	c1 fa 05             	sar    $0x5,%edx
47046a:	8b c2                	mov    %edx,%eax
47046c:	c1 e8 1f             	shr    $0x1f,%eax
47046f:	03 c2                	add    %edx,%eax
470471:	ba 04 00 00 00       	mov    $0x4,%edx
470476:	89 45 a4             	mov    %eax,-0x5c(%ebp)
470479:	40                   	inc    %eax
47047a:	f7 e2                	mul    %edx
47047c:	0f 90 c1             	seto   %cl
47047f:	f7 d9                	neg    %ecx
470481:	0b c8                	or     %eax,%ecx
470483:	51                   	push   %ecx
470484:	e8 f7 0b 17 00       	call   0x5e1080
470489:	8b 8f 4c 03 00 00    	mov    0x34c(%edi),%ecx
47048f:	83 c4 04             	add    $0x4,%esp
470492:	83 7d a4 00          	cmpl   $0x0,-0x5c(%ebp)
470496:	8b 55 94             	mov    -0x6c(%ebp),%edx
470499:	c7 45 8c 00 00 00 00 	movl   $0x0,-0x74(%ebp)
4704a0:	8b 0c 11             	mov    (%ecx,%edx,1),%ecx
4704a3:	89 41 08             	mov    %eax,0x8(%ecx)
4704a6:	0f 86 49 04 00 00    	jbe    0x4708f5
4704ac:	c7 45 84 00 00 00 00 	movl   $0x0,-0x7c(%ebp)
4704b3:	6a 1c                	push   $0x1c
4704b5:	e8 88 0b 17 00       	call   0x5e1042
4704ba:	8b c8                	mov    %eax,%ecx
4704bc:	83 c4 04             	add    $0x4,%esp
4704bf:	85 c9                	test   %ecx,%ecx
4704c1:	74 14                	je     0x4704d7
4704c3:	0f 57 c0             	xorps  %xmm0,%xmm0
4704c6:	0f 11 01             	movups %xmm0,(%ecx)
4704c9:	66 0f d6 41 10       	movq   %xmm0,0x10(%ecx)
4704ce:	c7 41 18 00 00 00 00 	movl   $0x0,0x18(%ecx)
4704d5:	eb 02                	jmp    0x4704d9
4704d7:	33 c9                	xor    %ecx,%ecx
4704d9:	8b 45 8c             	mov    -0x74(%ebp),%eax
4704dc:	8b 55 94             	mov    -0x6c(%ebp),%edx
4704df:	c1 e0 02             	shl    $0x2,%eax
4704e2:	89 45 88             	mov    %eax,-0x78(%ebp)
4704e5:	8b 87 4c 03 00 00    	mov    0x34c(%edi),%eax
4704eb:	8b 04 10             	mov    (%eax,%edx,1),%eax
4704ee:	8b 55 88             	mov    -0x78(%ebp),%edx
4704f1:	8b 40 08             	mov    0x8(%eax),%eax
4704f4:	89 0c 02             	mov    %ecx,(%edx,%eax,1)
4704f7:	b8 31 0c c3 30       	mov    $0x30c30c31,%eax
4704fc:	8b 7e 5c             	mov    0x5c(%esi),%edi
4704ff:	8b cf                	mov    %edi,%ecx
470501:	2b 4e 58             	sub    0x58(%esi),%ecx
470504:	f7 e9                	imul   %ecx
470506:	c1 fa 05             	sar    $0x5,%edx
470509:	8b c2                	mov    %edx,%eax
47050b:	c1 e8 1f             	shr    $0x1f,%eax
47050e:	03 c2                	add    %edx,%eax
470510:	3b 45 8c             	cmp    -0x74(%ebp),%eax
470513:	0f 86 f5 11 00 00    	jbe    0x47170e
470519:	8b 46 58             	mov    0x58(%esi),%eax
47051c:	03 45 84             	add    -0x7c(%ebp),%eax
47051f:	89 45 9c             	mov    %eax,-0x64(%ebp)
470522:	83 78 14 10          	cmpl   $0x10,0x14(%eax)
470526:	72 05                	jb     0x47052d
470528:	8b 08                	mov    (%eax),%ecx
47052a:	89 4d 9c             	mov    %ecx,-0x64(%ebp)
47052d:	8b 50 10             	mov    0x10(%eax),%edx
470530:	8b 45 90             	mov    -0x70(%ebp),%eax
470533:	8b 4d 94             	mov    -0x6c(%ebp),%ecx
470536:	89 95 7c ff ff ff    	mov    %edx,-0x84(%ebp)
47053c:	8b 80 4c 03 00 00    	mov    0x34c(%eax),%eax
470542:	8b 04 08             	mov    (%eax,%ecx,1),%eax
470545:	8b 4d 88             	mov    -0x78(%ebp),%ecx
470548:	8b 40 08             	mov    0x8(%eax),%eax
47054b:	8b 04 01             	mov    (%ecx,%eax,1),%eax
47054e:	8b 4d 9c             	mov    -0x64(%ebp),%ecx
470551:	89 45 98             	mov    %eax,-0x68(%ebp)
470554:	85 c0                	test   %eax,%eax
470556:	74 28                	je     0x470580
470558:	85 c9                	test   %ecx,%ecx
47055a:	74 24                	je     0x470580
47055c:	8d 7a 01             	lea    0x1(%edx),%edi
47055f:	57                   	push   %edi
470560:	e8 1b 0b 17 00       	call   0x5e1080
470565:	ff b5 7c ff ff ff    	push   -0x84(%ebp)
47056b:	8b 4d 98             	mov    -0x68(%ebp),%ecx
47056e:	ff 75 9c             	push   -0x64(%ebp)
470571:	57                   	push   %edi
470572:	50                   	push   %eax
470573:	89 01                	mov    %eax,(%ecx)
470575:	e8 06 80 ff ff       	call   0x468580
47057a:	8b 7e 5c             	mov    0x5c(%esi),%edi
47057d:	83 c4 14             	add    $0x14,%esp
470580:	8b cf                	mov    %edi,%ecx
470582:	b8 31 0c c3 30       	mov    $0x30c30c31,%eax
470587:	2b 4e 58             	sub    0x58(%esi),%ecx
47058a:	f7 e9                	imul   %ecx
47058c:	c1 fa 05             	sar    $0x5,%edx
47058f:	8b c2                	mov    %edx,%eax
470591:	c1 e8 1f             	shr    $0x1f,%eax
470594:	03 c2                	add    %edx,%eax
470596:	3b 45 8c             	cmp    -0x74(%ebp),%eax
470599:	0f 86 6f 11 00 00    	jbe    0x47170e
47059f:	8b 45 84             	mov    -0x7c(%ebp),%eax
4705a2:	8b 56 58             	mov    0x58(%esi),%edx
4705a5:	8d 48 60             	lea    0x60(%eax),%ecx
4705a8:	03 ca                	add    %edx,%ecx
4705aa:	89 4d 9c             	mov    %ecx,-0x64(%ebp)
4705ad:	83 79 14 10          	cmpl   $0x10,0x14(%ecx)
4705b1:	72 05                	jb     0x4705b8
4705b3:	8b 09                	mov    (%ecx),%ecx
4705b5:	89 4d 9c             	mov    %ecx,-0x64(%ebp)
4705b8:	8b 54 02 70          	mov    0x70(%edx,%eax,1),%edx
4705bc:	8b 45 90             	mov    -0x70(%ebp),%eax
4705bf:	8b 4d 94             	mov    -0x6c(%ebp),%ecx
4705c2:	89 55 98             	mov    %edx,-0x68(%ebp)
4705c5:	8b 80 4c 03 00 00    	mov    0x34c(%eax),%eax
4705cb:	8b 04 08             	mov    (%eax,%ecx,1),%eax
4705ce:	8b 4d 88             	mov    -0x78(%ebp),%ecx
4705d1:	8b 40 08             	mov    0x8(%eax),%eax
4705d4:	8b 04 08             	mov    (%eax,%ecx,1),%eax
4705d7:	8b 4d 9c             	mov    -0x64(%ebp),%ecx
4705da:	83 c0 10             	add    $0x10,%eax
4705dd:	89 85 7c ff ff ff    	mov    %eax,-0x84(%ebp)
4705e3:	74 28                	je     0x47060d
4705e5:	85 c9                	test   %ecx,%ecx
4705e7:	74 24                	je     0x47060d
4705e9:	8d 7a 01             	lea    0x1(%edx),%edi
4705ec:	57                   	push   %edi
4705ed:	e8 8e 0a 17 00       	call   0x5e1080
4705f2:	ff 75 98             	push   -0x68(%ebp)
4705f5:	8b 8d 7c ff ff ff    	mov    -0x84(%ebp),%ecx
4705fb:	ff 75 9c             	push   -0x64(%ebp)
4705fe:	57                   	push   %edi
4705ff:	50                   	push   %eax
470600:	89 01                	mov    %eax,(%ecx)
470602:	e8 79 7f ff ff       	call   0x468580
470607:	8b 7e 5c             	mov    0x5c(%esi),%edi
47060a:	83 c4 14             	add    $0x14,%esp
47060d:	8b cf                	mov    %edi,%ecx
47060f:	b8 31 0c c3 30       	mov    $0x30c30c31,%eax
470614:	2b 4e 58             	sub    0x58(%esi),%ecx
470617:	f7 e9                	imul   %ecx
470619:	c1 fa 05             	sar    $0x5,%edx
47061c:	8b c2                	mov    %edx,%eax
47061e:	c1 e8 1f             	shr    $0x1f,%eax
470621:	03 c2                	add    %edx,%eax
470623:	3b 45 8c             	cmp    -0x74(%ebp),%eax
470626:	0f 86 e2 10 00 00    	jbe    0x47170e
47062c:	8b 45 84             	mov    -0x7c(%ebp),%eax
47062f:	8b 56 58             	mov    0x58(%esi),%edx
470632:	8d 48 18             	lea    0x18(%eax),%ecx
470635:	03 ca                	add    %edx,%ecx
470637:	89 4d 9c             	mov    %ecx,-0x64(%ebp)
47063a:	83 79 14 10          	cmpl   $0x10,0x14(%ecx)
47063e:	72 05                	jb     0x470645
470640:	8b 09                	mov    (%ecx),%ecx
470642:	89 4d 9c             	mov    %ecx,-0x64(%ebp)
470645:	8b 54 02 28          	mov    0x28(%edx,%eax,1),%edx
470649:	8b 45 90             	mov    -0x70(%ebp),%eax
47064c:	8b 4d 94             	mov    -0x6c(%ebp),%ecx
47064f:	89 55 98             	mov    %edx,-0x68(%ebp)
470652:	8b 80 4c 03 00 00    	mov    0x34c(%eax),%eax
470658:	8b 04 08             	mov    (%eax,%ecx,1),%eax
47065b:	8b 4d 88             	mov    -0x78(%ebp),%ecx
47065e:	8b 40 08             	mov    0x8(%eax),%eax
470661:	8b 04 08             	mov    (%eax,%ecx,1),%eax
470664:	8b 4d 9c             	mov    -0x64(%ebp),%ecx
470667:	83 c0 08             	add    $0x8,%eax
47066a:	89 85 7c ff ff ff    	mov    %eax,-0x84(%ebp)
470670:	74 28                	je     0x47069a
470672:	85 c9                	test   %ecx,%ecx
470674:	74 24                	je     0x47069a
470676:	8d 7a 01             	lea    0x1(%edx),%edi
470679:	57                   	push   %edi
47067a:	e8 01 0a 17 00       	call   0x5e1080
47067f:	ff 75 98             	push   -0x68(%ebp)
470682:	8b 8d 7c ff ff ff    	mov    -0x84(%ebp),%ecx
470688:	ff 75 9c             	push   -0x64(%ebp)
47068b:	57                   	push   %edi
47068c:	50                   	push   %eax
47068d:	89 01                	mov    %eax,(%ecx)
47068f:	e8 ec 7e ff ff       	call   0x468580
470694:	8b 7e 5c             	mov    0x5c(%esi),%edi
470697:	83 c4 14             	add    $0x14,%esp
47069a:	8b cf                	mov    %edi,%ecx
47069c:	b8 31 0c c3 30       	mov    $0x30c30c31,%eax
4706a1:	2b 4e 58             	sub    0x58(%esi),%ecx