403256:	cc                   	int3
403257:	cc                   	int3
403258:	cc                   	int3
403259:	cc                   	int3
40325a:	cc                   	int3
40325b:	cc                   	int3
40325c:	cc                   	int3
40325d:	cc                   	int3
40325e:	cc                   	int3
40325f:	cc                   	int3
403260:	55                   	push   %ebp
403261:	8b ec                	mov    %esp,%ebp
403263:	83 ec 0c             	sub    $0xc,%esp
403266:	8b 55 08             	mov    0x8(%ebp),%edx
403269:	b8 ab aa aa 2a       	mov    $0x2aaaaaab,%eax
40326e:	53                   	push   %ebx
40326f:	8b d9                	mov    %ecx,%ebx
403271:	56                   	push   %esi
403272:	57                   	push   %edi
403273:	89 5d fc             	mov    %ebx,-0x4(%ebp)
403276:	8b 33                	mov    (%ebx),%esi
403278:	2b d6                	sub    %esi,%edx
40327a:	8b 4b 04             	mov    0x4(%ebx),%ecx
40327d:	f7 ea                	imul   %edx
40327f:	2b ce                	sub    %esi,%ecx
403281:	c1 fa 02             	sar    $0x2,%edx
403284:	8b c2                	mov    %edx,%eax
403286:	c1 e8 1f             	shr    $0x1f,%eax
403289:	03 c2                	add    %edx,%eax
40328b:	89 45 f8             	mov    %eax,-0x8(%ebp)
40328e:	b8 ab aa aa 2a       	mov    $0x2aaaaaab,%eax
403293:	f7 e9                	imul   %ecx
403295:	c1 fa 02             	sar    $0x2,%edx
403298:	8b c2                	mov    %edx,%eax
40329a:	c1 e8 1f             	shr    $0x1f,%eax
40329d:	03 c2                	add    %edx,%eax
40329f:	89 45 f4             	mov    %eax,-0xc(%ebp)
4032a2:	3d aa aa aa 0a       	cmp    $0xaaaaaaa,%eax
4032a7:	0f 84 cd 00 00 00    	je     0x40337a
4032ad:	8b 4b 08             	mov    0x8(%ebx),%ecx
4032b0:	8d 78 01             	lea    0x1(%eax),%edi
4032b3:	2b ce                	sub    %esi,%ecx
4032b5:	b8 ab aa aa 2a       	mov    $0x2aaaaaab,%eax
4032ba:	f7 e9                	imul   %ecx
4032bc:	b8 aa aa aa 0a       	mov    $0xaaaaaaa,%eax
4032c1:	c1 fa 02             	sar    $0x2,%edx
4032c4:	8b ca                	mov    %edx,%ecx
4032c6:	c1 e9 1f             	shr    $0x1f,%ecx
4032c9:	03 ca                	add    %edx,%ecx
4032cb:	8b d1                	mov    %ecx,%edx
4032cd:	d1 ea                	shr    $1,%edx
4032cf:	2b c2                	sub    %edx,%eax
4032d1:	3b c8                	cmp    %eax,%ecx
4032d3:	76 07                	jbe    0x4032dc
4032d5:	be aa aa aa 0a       	mov    $0xaaaaaaa,%esi
4032da:	eb 08                	jmp    0x4032e4
4032dc:	8d 34 0a             	lea    (%edx,%ecx,1),%esi
4032df:	3b f7                	cmp    %edi,%esi
4032e1:	0f 42 f7             	cmovb  %edi,%esi
4032e4:	56                   	push   %esi
4032e5:	e8 56 fe ff ff       	call   0x403140
4032ea:	8b d8                	mov    %eax,%ebx
4032ec:	8b 45 f8             	mov    -0x8(%ebp),%eax
4032ef:	8d 0c 40             	lea    (%eax,%eax,2),%ecx
4032f2:	8b 45 0c             	mov    0xc(%ebp),%eax
4032f5:	c7 04 cb 00 00 00 00 	movl   $0x0,(%ebx,%ecx,8)
4032fc:	8d 3c cb             	lea    (%ebx,%ecx,8),%edi
4032ff:	c7 47 10 00 00 00 00 	movl   $0x0,0x10(%edi)
403306:	33 c9                	xor    %ecx,%ecx
403308:	c7 47 14 00 00 00 00 	movl   $0x0,0x14(%edi)
40330f:	0f 10 00             	movups (%eax),%xmm0
403312:	0f 11 07             	movups %xmm0,(%edi)
403315:	f3 0f 7e 40 10       	movq   0x10(%eax),%xmm0
40331a:	66 0f d6 47 10       	movq   %xmm0,0x10(%edi)
40331f:	c7 40 10 00 00 00 00 	movl   $0x0,0x10(%eax)
403326:	c7 40 14 07 00 00 00 	movl   $0x7,0x14(%eax)
40332d:	66 89 08             	mov    %cx,(%eax)
403330:	8b 45 fc             	mov    -0x4(%ebp),%eax
403333:	8b 50 04             	mov    0x4(%eax),%edx
403336:	8b 08                	mov    (%eax),%ecx
403338:	8b 45 08             	mov    0x8(%ebp),%eax
40333b:	51                   	push   %ecx
40333c:	53                   	push   %ebx
40333d:	3b c2                	cmp    %edx,%eax
40333f:	74 17                	je     0x403358
403341:	8b d0                	mov    %eax,%edx
403343:	e8 f8 02 00 00       	call   0x403640
403348:	8b 55 fc             	mov    -0x4(%ebp),%edx
40334b:	8d 47 18             	lea    0x18(%edi),%eax
40334e:	8b 4d 08             	mov    0x8(%ebp),%ecx
403351:	83 c4 04             	add    $0x4,%esp
403354:	8b 52 04             	mov    0x4(%edx),%edx
403357:	50                   	push   %eax
403358:	e8 e3 02 00 00       	call   0x403640
40335d:	8b 45 f4             	mov    -0xc(%ebp),%eax
403360:	83 c4 08             	add    $0x8,%esp
403363:	8b 4d fc             	mov    -0x4(%ebp),%ecx
403366:	40                   	inc    %eax
403367:	56                   	push   %esi
403368:	50                   	push   %eax
403369:	53                   	push   %ebx
40336a:	e8 71 01 00 00       	call   0x4034e0
40336f:	8b c7                	mov    %edi,%eax
403371:	5f                   	pop    %edi
403372:	5e                   	pop    %esi
403373:	5b                   	pop    %ebx
403374:	8b e5                	mov    %ebp,%esp
403376:	5d                   	pop    %ebp
403377:	c2 08 00             	ret    $0x8
40337a:	e8 51 01 00 00       	call   0x4034d0
40337f:	cc                   	int3
403380:	55                   	push   %ebp
403381:	8b ec                	mov    %esp,%ebp
403383:	6a ff                	push   $0xffffffff
403385:	68 e0 74 49 00       	push   $0x4974e0
40338a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
403390:	50                   	push   %eax
403391:	83 ec 18             	sub    $0x18,%esp
403394:	53                   	push   %ebx
403395:	56                   	push   %esi
403396:	57                   	push   %edi
403397:	a1 14 40 4c 00       	mov    0x4c4014,%eax
40339c:	33 c5                	xor    %ebp,%eax
40339e:	50                   	push   %eax
40339f:	8d 45 f4             	lea    -0xc(%ebp),%eax
4033a2:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
4033a8:	89 65 f0             	mov    %esp,-0x10(%ebp)
4033ab:	8b d9                	mov    %ecx,%ebx
4033ad:	8b 33                	mov    (%ebx),%esi
4033af:	b8 ab aa aa 2a       	mov    $0x2aaaaaab,%eax
4033b4:	8b 55 08             	mov    0x8(%ebp),%edx
4033b7:	8b 4b 04             	mov    0x4(%ebx),%ecx
4033ba:	2b d6                	sub    %esi,%edx
4033bc:	f7 ea                	imul   %edx
4033be:	2b ce                	sub    %esi,%ecx
4033c0:	c1 fa 02             	sar    $0x2,%edx
4033c3:	8b c2                	mov    %edx,%eax
4033c5:	c1 e8 1f             	shr    $0x1f,%eax
4033c8:	03 c2                	add    %edx,%eax
4033ca:	89 45 ec             	mov    %eax,-0x14(%ebp)
4033cd:	b8 ab aa aa 2a       	mov    $0x2aaaaaab,%eax
4033d2:	f7 e9                	imul   %ecx
4033d4:	c1 fa 02             	sar    $0x2,%edx
4033d7:	8b c2                	mov    %edx,%eax
4033d9:	c1 e8 1f             	shr    $0x1f,%eax
4033dc:	03 c2                	add    %edx,%eax
4033de:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4033e1:	3d aa aa aa 0a       	cmp    $0xaaaaaaa,%eax
4033e6:	0f 84 d8 00 00 00    	je     0x4034c4
4033ec:	8b 4b 08             	mov    0x8(%ebx),%ecx
4033ef:	8d 78 01             	lea    0x1(%eax),%edi
4033f2:	2b ce                	sub    %esi,%ecx
4033f4:	b8 ab aa aa 2a       	mov    $0x2aaaaaab,%eax
4033f9:	f7 e9                	imul   %ecx
4033fb:	b8 aa aa aa 0a       	mov    $0xaaaaaaa,%eax
403400:	c1 fa 02             	sar    $0x2,%edx
403403:	8b ca                	mov    %edx,%ecx
403405:	c1 e9 1f             	shr    $0x1f,%ecx
403408:	03 ca                	add    %edx,%ecx
40340a:	8b d1                	mov    %ecx,%edx
40340c:	d1 ea                	shr    $1,%edx
40340e:	2b c2                	sub    %edx,%eax
403410:	3b c8                	cmp    %eax,%ecx
403412:	76 07                	jbe    0x40341b
403414:	be aa aa aa 0a       	mov    $0xaaaaaaa,%esi
403419:	eb 08                	jmp    0x403423
40341b:	8d 34 0a             	lea    (%edx,%ecx,1),%esi
40341e:	3b f7                	cmp    %edi,%esi
403420:	0f 42 f7             	cmovb  %edi,%esi
403423:	56                   	push   %esi
403424:	89 75 e8             	mov    %esi,-0x18(%ebp)
403427:	e8 14 fd ff ff       	call   0x403140
40342c:	ff 75 0c             	push   0xc(%ebp)
40342f:	8b f8                	mov    %eax,%edi
403431:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
403438:	8b 45 ec             	mov    -0x14(%ebp),%eax
40343b:	89 7d dc             	mov    %edi,-0x24(%ebp)
40343e:	8d 0c 40             	lea    (%eax,%eax,2),%ecx
403441:	8d 04 cf             	lea    (%edi,%ecx,8),%eax
403444:	8d 48 18             	lea    0x18(%eax),%ecx
403447:	89 45 e0             	mov    %eax,-0x20(%ebp)
40344a:	89 4d ec             	mov    %ecx,-0x14(%ebp)
40344d:	8b c8                	mov    %eax,%ecx
40344f:	e8 1c 01 00 00       	call   0x403570
403454:	8b 0b                	mov    (%ebx),%ecx
403456:	8b 53 04             	mov    0x4(%ebx),%edx
403459:	8b 45 08             	mov    0x8(%ebp),%eax
40345c:	51                   	push   %ecx
40345d:	57                   	push   %edi
40345e:	3b c2                	cmp    %edx,%eax
403460:	74 13                	je     0x403475
403462:	8b d0                	mov    %eax,%edx
403464:	e8 d7 01 00 00       	call   0x403640
403469:	8b 53 04             	mov    0x4(%ebx),%edx
40346c:	83 c4 04             	add    $0x4,%esp
40346f:	8b 4d 08             	mov    0x8(%ebp),%ecx
403472:	ff 75 ec             	push   -0x14(%ebp)
403475:	e8 c6 01 00 00       	call   0x403640
40347a:	8b 45 e4             	mov    -0x1c(%ebp),%eax
40347d:	83 c4 08             	add    $0x8,%esp
403480:	40                   	inc    %eax
403481:	8b cb                	mov    %ebx,%ecx
403483:	56                   	push   %esi
403484:	50                   	push   %eax
403485:	57                   	push   %edi
403486:	e8 55 00 00 00       	call   0x4034e0
40348b:	8b 45 e0             	mov    -0x20(%ebp),%eax
40348e:	8b 4d f4             	mov    -0xc(%ebp),%ecx
403491:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
403498:	59                   	pop    %ecx
403499:	5f                   	pop    %edi
40349a:	5e                   	pop    %esi
40349b:	5b                   	pop    %ebx
40349c:	8b e5                	mov    %ebp,%esp
40349e:	5d                   	pop    %ebp
40349f:	c2 08 00             	ret    $0x8
4034a2:	51                   	push   %ecx
4034a3:	8b 4d ec             	mov    -0x14(%ebp),%ecx
4034a6:	8b d1                	mov    %ecx,%edx
4034a8:	e8 23 fc ff ff       	call   0x4030d0
4034ad:	83 c4 04             	add    $0x4,%esp
4034b0:	ff 75 e8             	push   -0x18(%ebp)
4034b3:	ff 75 dc             	push   -0x24(%ebp)
4034b6:	e8 d5 fb ff ff       	call   0x403090
4034bb:	6a 00                	push   $0x0
4034bd:	6a 00                	push   $0x0
4034bf:	e8 ea 80 06 00       	call   0x46b5ae
4034c4:	e8 07 00 00 00       	call   0x4034d0
4034c9:	cc                   	int3
4034ca:	cc                   	int3
4034cb:	cc                   	int3
4034cc:	cc                   	int3
4034cd:	cc                   	int3
4034ce:	cc                   	int3
4034cf:	cc                   	int3
4034d0:	68 e0 f2 4a 00       	push   $0x4af2e0
4034d5:	e8 60 52 06 00       	call   0x46873a
4034da:	cc                   	int3
4034db:	cc                   	int3
4034dc:	cc                   	int3
4034dd:	cc                   	int3
4034de:	cc                   	int3
4034df:	cc                   	int3
4034e0:	55                   	push   %ebp
4034e1:	8b ec                	mov    %esp,%ebp
4034e3:	57                   	push   %edi
4034e4:	8b f9                	mov    %ecx,%edi
4034e6:	8b 0f                	mov    (%edi),%ecx
4034e8:	85 c9                	test   %ecx,%ecx
4034ea:	74 50                	je     0x40353c
4034ec:	8b 57 04             	mov    0x4(%edi),%edx
4034ef:	56                   	push   %esi
4034f0:	51                   	push   %ecx
4034f1:	e8 da fb ff ff       	call   0x4030d0
4034f6:	8b 4f 08             	mov    0x8(%edi),%ecx
4034f9:	b8 ab aa aa 2a       	mov    $0x2aaaaaab,%eax
4034fe:	8b 37                	mov    (%edi),%esi
403500:	83 c4 04             	add    $0x4,%esp
403503:	2b ce                	sub    %esi,%ecx
403505:	f7 e9                	imul   %ecx
403507:	c1 fa 02             	sar    $0x2,%edx
40350a:	8b c2                	mov    %edx,%eax
40350c:	c1 e8 1f             	shr    $0x1f,%eax
40350f:	03 c2                	add    %edx,%eax
403511:	8d 0c 40             	lea    (%eax,%eax,2),%ecx
403514:	c1 e1 03             	shl    $0x3,%ecx
403517:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
40351d:	72 12                	jb     0x403531
40351f:	8b 56 fc             	mov    -0x4(%esi),%edx
403522:	83 c1 23             	add    $0x23,%ecx
403525:	2b f2                	sub    %edx,%esi
403527:	8d 46 fc             	lea    -0x4(%esi),%eax
40352a:	83 f8 1f             	cmp    $0x1f,%eax
40352d:	77 2f                	ja     0x40355e
40352f:	8b f2                	mov    %edx,%esi
403531:	51                   	push   %ecx
403532:	56                   	push   %esi
403533:	e8 d0 64 06 00       	call   0x469a08
403538:	83 c4 08             	add    $0x8,%esp
40353b:	5e                   	pop    %esi
40353c:	8b 4d 08             	mov    0x8(%ebp),%ecx
40353f:	8b 45 0c             	mov    0xc(%ebp),%eax
403542:	89 0f                	mov    %ecx,(%edi)
403544:	8d 04 40             	lea    (%eax,%eax,2),%eax
403547:	8d 04 c1             	lea    (%ecx,%eax,8),%eax
40354a:	89 47 04             	mov    %eax,0x4(%edi)
40354d:	8b 45 10             	mov    0x10(%ebp),%eax
403550:	8d 04 40             	lea    (%eax,%eax,2),%eax
403553:	8d 04 c1             	lea    (%ecx,%eax,8),%eax
403556:	89 47 08             	mov    %eax,0x8(%edi)
403559:	5f                   	pop    %edi
40355a:	5d                   	pop    %ebp
40355b:	c2 0c 00             	ret    $0xc
40355e:	e8 ce 60 07 00       	call   0x479631
403563:	cc                   	int3
403564:	cc                   	int3
403565:	cc                   	int3
403566:	cc                   	int3
403567:	cc                   	int3
403568:	cc                   	int3
403569:	cc                   	int3
40356a:	cc                   	int3
40356b:	cc                   	int3
40356c:	cc                   	int3
40356d:	cc                   	int3
40356e:	cc                   	int3
40356f:	cc                   	int3
403570:	55                   	push   %ebp
403571:	8b ec                	mov    %esp,%ebp
403573:	51                   	push   %ecx
403574:	53                   	push   %ebx
403575:	8b 5d 08             	mov    0x8(%ebp),%ebx
403578:	8b c3                	mov    %ebx,%eax
40357a:	56                   	push   %esi
40357b:	8b f1                	mov    %ecx,%esi
40357d:	89 5d fc             	mov    %ebx,-0x4(%ebp)
403580:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
403586:	c7 46 10 00 00 00 00 	movl   $0x0,0x10(%esi)
40358d:	c7 46 14 00 00 00 00 	movl   $0x0,0x14(%esi)
403594:	83 7b 14 08          	cmpl   $0x8,0x14(%ebx)
403598:	72 05                	jb     0x40359f
40359a:	8b 03                	mov    (%ebx),%eax
40359c:	89 45 fc             	mov    %eax,-0x4(%ebp)
40359f:	8b 5b 10             	mov    0x10(%ebx),%ebx
4035a2:	81 fb fe ff ff 7f    	cmp    $0x7ffffffe,%ebx
4035a8:	0f 87 81 00 00 00    	ja     0x40362f
4035ae:	c7 46 14 07 00 00 00 	movl   $0x7,0x14(%esi)
4035b5:	83 fb 08             	cmp    $0x8,%ebx
4035b8:	73 19                	jae    0x4035d3
4035ba:	6a 10                	push   $0x10
4035bc:	50                   	push   %eax
4035bd:	56                   	push   %esi
4035be:	89 5e 10             	mov    %ebx,0x10(%esi)
4035c1:	e8 5a 80 06 00       	call   0x46b620
4035c6:	83 c4 0c             	add    $0xc,%esp
4035c9:	8b c6                	mov    %esi,%eax
4035cb:	5e                   	pop    %esi
4035cc:	5b                   	pop    %ebx
4035cd:	8b e5                	mov    %ebp,%esp
4035cf:	5d                   	pop    %ebp
4035d0:	c2 04 00             	ret    $0x4
4035d3:	57                   	push   %edi
4035d4:	8b fb                	mov    %ebx,%edi
4035d6:	83 cf 07             	or     $0x7,%edi
4035d9:	81 ff fe ff ff 7f    	cmp    $0x7ffffffe,%edi
4035df:	76 07                	jbe    0x4035e8
4035e1:	bf fe ff ff 7f       	mov    $0x7ffffffe,%edi
4035e6:	eb 0a                	jmp    0x4035f2
4035e8:	b8 0a 00 00 00       	mov    $0xa,%eax
4035ed:	3b f8                	cmp    %eax,%edi