402187:	7e 0b                	jle    0x402194
402189:	0f b7 c0             	movzwl %ax,%eax
40218c:	0d 00 00 07 80       	or     $0x80070000,%eax
402191:	c3                   	ret
402192:	33 c0                	xor    %eax,%eax
402194:	c3                   	ret
402195:	cc                   	int3
402196:	cc                   	int3
402197:	cc                   	int3
402198:	cc                   	int3
402199:	cc                   	int3
40219a:	cc                   	int3
40219b:	cc                   	int3
40219c:	cc                   	int3
40219d:	cc                   	int3
40219e:	cc                   	int3
40219f:	cc                   	int3
4021a0:	55                   	push   %ebp
4021a1:	8b ec                	mov    %esp,%ebp
4021a3:	6a ff                	push   $0xffffffff
4021a5:	68 f5 73 49 00       	push   $0x4973f5
4021aa:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
4021b0:	50                   	push   %eax
4021b1:	81 ec 20 01 00 00    	sub    $0x120,%esp
4021b7:	a1 14 40 4c 00       	mov    0x4c4014,%eax
4021bc:	33 c5                	xor    %ebp,%eax
4021be:	89 45 f0             	mov    %eax,-0x10(%ebp)
4021c1:	56                   	push   %esi
4021c2:	57                   	push   %edi
4021c3:	50                   	push   %eax
4021c4:	8d 45 f4             	lea    -0xc(%ebp),%eax
4021c7:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
4021cd:	8b f1                	mov    %ecx,%esi
4021cf:	89 b5 f4 fe ff ff    	mov    %esi,-0x10c(%ebp)
4021d5:	8b 7d 08             	mov    0x8(%ebp),%edi
4021d8:	8d 4d a8             	lea    -0x58(%ebp),%ecx
4021db:	89 7d ec             	mov    %edi,-0x14(%ebp)
4021de:	6a 26                	push   $0x26
4021e0:	68 d0 ef 4a 00       	push   $0x4aefd0
4021e5:	c7 45 a8 00 00 00 00 	movl   $0x0,-0x58(%ebp)
4021ec:	c7 45 b8 00 00 00 00 	movl   $0x0,-0x48(%ebp)
4021f3:	c7 45 bc 00 00 00 00 	movl   $0x0,-0x44(%ebp)
4021fa:	e8 61 fe ff ff       	call   0x402060
4021ff:	83 c6 10             	add    $0x10,%esi
402202:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
402209:	c7 45 c0 00 00 00 00 	movl   $0x0,-0x40(%ebp)
402210:	8b c6                	mov    %esi,%eax
402212:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%ebp)
402219:	89 75 e4             	mov    %esi,-0x1c(%ebp)
40221c:	83 7e 14 08          	cmpl   $0x8,0x14(%esi)
402220:	72 02                	jb     0x402224
402222:	8b 06                	mov    (%esi),%eax
402224:	50                   	push   %eax
402225:	e8 76 07 00 00       	call   0x4029a0
40222a:	84 c0                	test   %al,%al
40222c:	a1 88 8c 4c 00       	mov    0x4c8c88,%eax
402231:	0f 85 b8 00 00 00    	jne    0x4022ef
402237:	85 c0                	test   %eax,%eax
402239:	75 36                	jne    0x402271
40223b:	68 84 00 00 00       	push   $0x84
402240:	e8 93 77 06 00       	call   0x4699d8
402245:	8b f0                	mov    %eax,%esi
402247:	89 b5 f4 fe ff ff    	mov    %esi,-0x10c(%ebp)
40224d:	68 84 00 00 00       	push   $0x84
402252:	6a 00                	push   $0x0
402254:	56                   	push   %esi
402255:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
402259:	e8 52 99 06 00       	call   0x46bbb0
40225e:	83 c4 10             	add    $0x10,%esp
402261:	8b ce                	mov    %esi,%ecx
402263:	e8 18 3a 00 00       	call   0x405c80
402268:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
40226c:	a3 88 8c 4c 00       	mov    %eax,0x4c8c88
402271:	8b 48 04             	mov    0x4(%eax),%ecx
402274:	83 c0 04             	add    $0x4,%eax
402277:	68 20 f0 4a 00       	push   $0x4af020
40227c:	68 60 ea 4a 00       	push   $0x4aea60
402281:	50                   	push   %eax
402282:	8b 71 24             	mov    0x24(%ecx),%esi
402285:	8b ce                	mov    %esi,%ecx
402287:	ff 15 d4 e2 49 00    	call   *0x49e2d4
40228d:	ff d6                	call   *%esi
40228f:	83 c4 0c             	add    $0xc,%esp
402292:	c7 07 00 00 00 00    	movl   $0x0,(%edi)
402298:	8b cf                	mov    %edi,%ecx
40229a:	c7 47 10 00 00 00 00 	movl   $0x0,0x10(%edi)
4022a1:	c7 47 14 00 00 00 00 	movl   $0x0,0x14(%edi)
4022a8:	6a 26                	push   $0x26
4022aa:	68 d0 ef 4a 00       	push   $0x4aefd0
4022af:	e8 ac fd ff ff       	call   0x402060
4022b4:	8b 4d bc             	mov    -0x44(%ebp),%ecx
4022b7:	83 f9 08             	cmp    $0x8,%ecx
4022ba:	0f 82 ad 06 00 00    	jb     0x40296d
4022c0:	8b 55 a8             	mov    -0x58(%ebp),%edx
4022c3:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
4022ca:	8b c2                	mov    %edx,%eax
4022cc:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
4022d2:	72 14                	jb     0x4022e8
4022d4:	8b 50 fc             	mov    -0x4(%eax),%edx
4022d7:	83 c1 23             	add    $0x23,%ecx
4022da:	2b c2                	sub    %edx,%eax
4022dc:	83 c0 fc             	add    $0xfffffffc,%eax
4022df:	83 f8 1f             	cmp    $0x1f,%eax
4022e2:	0f 87 ae 06 00 00    	ja     0x402996
4022e8:	51                   	push   %ecx
4022e9:	52                   	push   %edx
4022ea:	e9 76 06 00 00       	jmp    0x402965
4022ef:	85 c0                	test   %eax,%eax
4022f1:	75 39                	jne    0x40232c
4022f3:	68 84 00 00 00       	push   $0x84
4022f8:	e8 db 76 06 00       	call   0x4699d8
4022fd:	8b f0                	mov    %eax,%esi
4022ff:	89 b5 f0 fe ff ff    	mov    %esi,-0x110(%ebp)
402305:	68 84 00 00 00       	push   $0x84
40230a:	6a 00                	push   $0x0
40230c:	56                   	push   %esi
40230d:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
402311:	e8 9a 98 06 00       	call   0x46bbb0
402316:	83 c4 10             	add    $0x10,%esp
402319:	8b ce                	mov    %esi,%ecx
40231b:	e8 60 39 00 00       	call   0x405c80
402320:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
402324:	8b 75 e4             	mov    -0x1c(%ebp),%esi
402327:	a3 88 8c 4c 00       	mov    %eax,0x4c8c88
40232c:	8b 8d f4 fe ff ff    	mov    -0x10c(%ebp),%ecx
402332:	83 c0 04             	add    $0x4,%eax
402335:	50                   	push   %eax
402336:	8d 41 2c             	lea    0x2c(%ecx),%eax
402339:	50                   	push   %eax
40233a:	8d 45 ec             	lea    -0x14(%ebp),%eax
40233d:	50                   	push   %eax
40233e:	0f b6 41 28          	movzbl 0x28(%ecx),%eax
402342:	8d 51 04             	lea    0x4(%ecx),%edx
402345:	50                   	push   %eax
402346:	8d 45 c0             	lea    -0x40(%ebp),%eax
402349:	8b ce                	mov    %esi,%ecx
40234b:	50                   	push   %eax
40234c:	e8 7f 26 01 00       	call   0x4149d0
402351:	83 c4 14             	add    $0x14,%esp
402354:	84 c0                	test   %al,%al
402356:	0f 85 46 03 00 00    	jne    0x4026a2
40235c:	a1 88 8c 4c 00       	mov    0x4c8c88,%eax
402361:	85 c0                	test   %eax,%eax
402363:	75 39                	jne    0x40239e
402365:	68 84 00 00 00       	push   $0x84
40236a:	e8 69 76 06 00       	call   0x4699d8
40236f:	8b f0                	mov    %eax,%esi
402371:	89 b5 f0 fe ff ff    	mov    %esi,-0x110(%ebp)
402377:	68 84 00 00 00       	push   $0x84
40237c:	6a 00                	push   $0x0
40237e:	56                   	push   %esi
40237f:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
402383:	e8 28 98 06 00       	call   0x46bbb0
402388:	83 c4 10             	add    $0x10,%esp
40238b:	8b ce                	mov    %esi,%ecx
40238d:	e8 ee 38 00 00       	call   0x405c80
402392:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
402396:	8b 75 e4             	mov    -0x1c(%ebp),%esi
402399:	a3 88 8c 4c 00       	mov    %eax,0x4c8c88
40239e:	83 c0 04             	add    $0x4,%eax
4023a1:	83 7e 14 08          	cmpl   $0x8,0x14(%esi)
4023a5:	72 05                	jb     0x4023ac
4023a7:	8b 36                	mov    (%esi),%esi
4023a9:	89 75 e4             	mov    %esi,-0x1c(%ebp)
4023ac:	ff 75 ec             	push   -0x14(%ebp)
4023af:	8b 30                	mov    (%eax),%esi
4023b1:	ff 75 c0             	push   -0x40(%ebp)
4023b4:	ff 75 e4             	push   -0x1c(%ebp)
4023b7:	8b 76 24             	mov    0x24(%esi),%esi
4023ba:	8b ce                	mov    %esi,%ecx
4023bc:	68 98 f0 4a 00       	push   $0x4af098
4023c1:	68 60 ea 4a 00       	push   $0x4aea60
4023c6:	50                   	push   %eax
4023c7:	ff 15 d4 e2 49 00    	call   *0x49e2d4
4023cd:	ff d6                	call   *%esi
4023cf:	0f 57 c0             	xorps  %xmm0,%xmm0
4023d2:	66 0f 13 45 e8       	movlpd %xmm0,-0x18(%ebp)
4023d7:	68 c8 00 00 00       	push   $0xc8
4023dc:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%ebp)
4023e3:	e8 f0 75 06 00       	call   0x4699d8
4023e8:	68 c8 00 00 00       	push   $0xc8
4023ed:	8b f0                	mov    %eax,%esi
4023ef:	6a 00                	push   $0x0
4023f1:	56                   	push   %esi
4023f2:	89 b5 f0 fe ff ff    	mov    %esi,-0x110(%ebp)
4023f8:	e8 b3 97 06 00       	call   0x46bbb0
4023fd:	83 c4 28             	add    $0x28,%esp
402400:	8b ce                	mov    %esi,%ecx
402402:	e8 d9 7d 02 00       	call   0x42a1e0
402407:	89 45 e8             	mov    %eax,-0x18(%ebp)
40240a:	c6 45 fc 04          	movb   $0x4,-0x4(%ebp)
40240e:	8d 8d d8 fe ff ff    	lea    -0x128(%ebp),%ecx
402414:	6a 26                	push   $0x26
402416:	68 d0 ef 4a 00       	push   $0x4aefd0
40241b:	c7 85 d8 fe ff ff 00 	movl   $0x0,-0x128(%ebp)
402422:	00 00 00
402425:	c7 85 e8 fe ff ff 00 	movl   $0x0,-0x118(%ebp)
40242c:	00 00 00
40242f:	c7 85 ec fe ff ff 00 	movl   $0x0,-0x114(%ebp)
402436:	00 00 00
402439:	e8 22 fc ff ff       	call   0x402060
40243e:	c6 45 fc 05          	movb   $0x5,-0x4(%ebp)
402442:	8d 85 d8 fe ff ff    	lea    -0x128(%ebp),%eax
402448:	83 bd ec fe ff ff 08 	cmpl   $0x8,-0x114(%ebp)
40244f:	0f 43 85 d8 fe ff ff 	cmovae -0x128(%ebp),%eax
402456:	8b f0                	mov    %eax,%esi
402458:	89 85 f4 fe ff ff    	mov    %eax,-0x10c(%ebp)
40245e:	8d 4e 02             	lea    0x2(%esi),%ecx
402461:	66 8b 06             	mov    (%esi),%ax
402464:	83 c6 02             	add    $0x2,%esi
402467:	66 85 c0             	test   %ax,%ax
40246a:	75 f5                	jne    0x402461
40246c:	2b f1                	sub    %ecx,%esi
40246e:	8b 4d e8             	mov    -0x18(%ebp),%ecx
402471:	d1 fe                	sar    $1,%esi
402473:	e8 78 7e 02 00       	call   0x42a2f0
402478:	8b 4d e8             	mov    -0x18(%ebp),%ecx
40247b:	e8 f0 7d 02 00       	call   0x42a270
402480:	8b 45 e8             	mov    -0x18(%ebp),%eax
402483:	8d 4d dc             	lea    -0x24(%ebp),%ecx
402486:	8b 10                	mov    (%eax),%edx
402488:	83 c0 04             	add    $0x4,%eax
40248b:	50                   	push   %eax
40248c:	83 ec 10             	sub    $0x10,%esp
40248f:	8d 04 36             	lea    (%esi,%esi,1),%eax
402492:	50                   	push   %eax
402493:	ff b5 f4 fe ff ff    	push   -0x10c(%ebp)
402499:	52                   	push   %edx
40249a:	e8 61 79 02 00       	call   0x429e00
40249f:	c6 45 fc 04          	movb   $0x4,-0x4(%ebp)
4024a3:	83 c4 20             	add    $0x20,%esp
4024a6:	8b 8d ec fe ff ff    	mov    -0x114(%ebp),%ecx
4024ac:	83 f9 08             	cmp    $0x8,%ecx
4024af:	72 35                	jb     0x4024e6
4024b1:	8b 95 d8 fe ff ff    	mov    -0x128(%ebp),%edx
4024b7:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
4024be:	8b c2                	mov    %edx,%eax
4024c0:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
4024c6:	72 14                	jb     0x4024dc
4024c8:	8b 50 fc             	mov    -0x4(%eax),%edx
4024cb:	83 c1 23             	add    $0x23,%ecx
4024ce:	2b c2                	sub    %edx,%eax
4024d0:	83 c0 fc             	add    $0xfffffffc,%eax
4024d3:	83 f8 1f             	cmp    $0x1f,%eax
4024d6:	0f 87 b0 04 00 00    	ja     0x40298c
4024dc:	51                   	push   %ecx
4024dd:	52                   	push   %edx
4024de:	e8 25 75 06 00       	call   0x469a08
4024e3:	83 c4 08             	add    $0x8,%esp
4024e6:	8b 45 e8             	mov    -0x18(%ebp),%eax
4024e9:	8b 10                	mov    (%eax),%edx
4024eb:	85 d2                	test   %edx,%edx
4024ed:	74 1d                	je     0x40250c
4024ef:	8b 52 10             	mov    0x10(%edx),%edx
4024f2:	85 d2                	test   %edx,%edx
4024f4:	74 16                	je     0x40250c
4024f6:	8b 0a                	mov    (%edx),%ecx
4024f8:	8b c2                	mov    %edx,%eax
4024fa:	c1 e9 08             	shr    $0x8,%ecx
4024fd:	2b c1                	sub    %ecx,%eax
4024ff:	8b 00                	mov    (%eax),%eax
402501:	8d 48 e0             	lea    -0x20(%eax),%ecx
402504:	f7 d8                	neg    %eax
402506:	1b c0                	sbb    %eax,%eax
402508:	85 c1                	test   %eax,%ecx
40250a:	75 02                	jne    0x40250e
40250c:	33 d2                	xor    %edx,%edx
40250e:	33 c0                	xor    %eax,%eax
402510:	c7 45 c4 00 00 00 00 	movl   $0x0,-0x3c(%ebp)
402517:	89 95 f4 fe ff ff    	mov    %edx,-0x10c(%ebp)
40251d:	c7 45 d4 00 00 00 00 	movl   $0x0,-0x2c(%ebp)
402524:	c7 45 d8 07 00 00 00 	movl   $0x7,-0x28(%ebp)
40252b:	66 89 45 c4          	mov    %ax,-0x3c(%ebp)
40252f:	68 b0 00 00 00       	push   $0xb0
402534:	50                   	push   %eax
402535:	8d 85 f8 fe ff ff    	lea    -0x108(%ebp),%eax
40253b:	c6 45 fc 06          	movb   $0x6,-0x4(%ebp)
40253f:	8b 75 c0             	mov    -0x40(%ebp),%esi
402542:	50                   	push   %eax
402543:	e8 68 96 06 00       	call   0x46bbb0
402548:	83 c4 08             	add    $0x8,%esp
40254b:	8d 8d f8 fe ff ff    	lea    -0x108(%ebp),%ecx
402551:	e8 4a 17 01 00       	call   0x413ca0
402556:	6a 00                	push   $0x0
402558:	56                   	push   %esi
402559:	8d 8d 08 ff ff ff    	lea    -0xf8(%ebp),%ecx
40255f:	c6 45 fc 07          	movb   $0x7,-0x4(%ebp)
402563:	e8 b8 45 01 00       	call   0x416b20
402568:	8d 55 c4             	lea    -0x3c(%ebp),%edx
40256b:	8d 8d f8 fe ff ff    	lea    -0x108(%ebp),%ecx
402571:	e8 3a 63 01 00       	call   0x4188b0
402576:	8d 8d f8 fe ff ff    	lea    -0x108(%ebp),%ecx
40257c:	c6 45 fc 06          	movb   $0x6,-0x4(%ebp)
402580:	e8 8b 0b 01 00       	call   0x413110
402585:	6a 07                	push   $0x7
402587:	68 50 f1 4a 00       	push   $0x4af150
40258c:	8d 8d d8 fe ff ff    	lea    -0x128(%ebp),%ecx
402592:	c7 85 d8 fe ff ff 00 	movl   $0x0,-0x128(%ebp)
402599:	00 00 00
40259c:	c7 85 e8 fe ff ff 00 	movl   $0x0,-0x118(%ebp)
4025a3:	00 00 00
4025a6:	c7 85 ec fe ff ff 00 	movl   $0x0,-0x114(%ebp)
4025ad:	00 00 00
4025b0:	e8 ab fa ff ff       	call   0x402060
4025b5:	8d 85 f0 fe ff ff    	lea    -0x110(%ebp),%eax
4025bb:	50                   	push   %eax
4025bc:	8d 85 f4 fe ff ff    	lea    -0x10c(%ebp),%eax
4025c2:	50                   	push   %eax
4025c3:	8d 45 c4             	lea    -0x3c(%ebp),%eax
4025c6:	50                   	push   %eax
4025c7:	8d 85 d8 fe ff ff    	lea    -0x128(%ebp),%eax
4025cd:	50                   	push   %eax
4025ce:	e8 0d 0c 01 00       	call   0x4131e0
4025d3:	8b 8d ec fe ff ff    	mov    -0x114(%ebp),%ecx
4025d9:	83 f9 08             	cmp    $0x8,%ecx
4025dc:	72 35                	jb     0x402613
4025de:	8b 95 d8 fe ff ff    	mov    -0x128(%ebp),%edx
4025e4:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
4025eb:	8b c2                	mov    %edx,%eax
4025ed:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
4025f3:	72 14                	jb     0x402609
4025f5:	8b 50 fc             	mov    -0x4(%eax),%edx
4025f8:	83 c1 23             	add    $0x23,%ecx
4025fb:	2b c2                	sub    %edx,%eax
4025fd:	83 c0 fc             	add    $0xfffffffc,%eax
402600:	83 f8 1f             	cmp    $0x1f,%eax
402603:	0f 87 8d 03 00 00    	ja     0x402996
402609:	51                   	push   %ecx
40260a:	52                   	push   %edx
40260b:	e8 f8 73 06 00       	call   0x469a08
402610:	83 c4 08             	add    $0x8,%esp
402613:	8d 45 a8             	lea    -0x58(%ebp),%eax
402616:	50                   	push   %eax
402617:	8d 4d e8             	lea    -0x18(%ebp),%ecx
40261a:	e8 d1 09 01 00       	call   0x412ff0
40261f:	0f 10 45 a8          	movups -0x58(%ebp),%xmm0
402623:	8b 4d d8             	mov    -0x28(%ebp),%ecx
402626:	c7 07 00 00 00 00    	movl   $0x0,(%edi)
40262c:	c7 47 10 00 00 00 00 	movl   $0x0,0x10(%edi)
402633:	c7 47 14 00 00 00 00 	movl   $0x0,0x14(%edi)
40263a:	0f 11 07             	movups %xmm0,(%edi)
40263d:	f3 0f 7e 45 b8       	movq   -0x48(%ebp),%xmm0
402642:	66 0f d6 47 10       	movq   %xmm0,0x10(%edi)
402647:	83 f9 08             	cmp    $0x8,%ecx
40264a:	72 32                	jb     0x40267e
40264c:	8b 55 c4             	mov    -0x3c(%ebp),%edx
40264f:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
402656:	8b c2                	mov    %edx,%eax
402658:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
40265e:	72 14                	jb     0x402674