401248:	a1 1c 93 83 02       	mov    0x283931c,%eax
40124d:	33 c9                	xor    %ecx,%ecx
40124f:	81 3d 84 6e 83 02 60 	cmpl   $0x1160,0x2836e84
401256:	11 00 00
401259:	0f 44 c1             	cmove  %ecx,%eax
40125c:	a3 1c 93 83 02       	mov    %eax,0x283931c
401261:	81 fe 0e 66 08 00    	cmp    $0x8660e,%esi
401267:	7e 14                	jle    0x40127d
401269:	81 7c 24 70 4a 2b 4a 	cmpl   $0x7c4a2b4a,0x70(%esp)
401270:	7c
401271:	74 0a                	je     0x40127d
401273:	81 7c 24 08 26 2e b9 	cmpl   $0x26b92e26,0x8(%esp)
40127a:	26
40127b:	75 0b                	jne    0x401288
40127d:	46                   	inc    %esi
40127e:	81 fe ce a3 26 2b    	cmp    $0x2b26a3ce,%esi
401284:	7c ae                	jl     0x401234
401286:	eb 0b                	jmp    0x401293
401288:	0f 57 c0             	xorps  %xmm0,%xmm0
40128b:	66 0f 13 05 28 93 83 	movlpd %xmm0,0x2839328
401292:	02
401293:	e8 fe 05 00 00       	call   0x401896
401298:	5e                   	pop    %esi
401299:	33 c0                	xor    %eax,%eax
40129b:	5d                   	pop    %ebp
40129c:	81 c4 74 05 00 00    	add    $0x574,%esp
4012a2:	c2 10 00             	ret    $0x10
4012a5:	83 ec 54             	sub    $0x54,%esp
4012a8:	53                   	push   %ebx
4012a9:	55                   	push   %ebp
4012aa:	33 ed                	xor    %ebp,%ebp
4012ac:	89 4c 24 14          	mov    %ecx,0x14(%esp)
4012b0:	81 3d 84 6e 83 02 48 	cmpl   $0x448,0x2836e84
4012b7:	04 00 00
4012ba:	8b da                	mov    %edx,%ebx
4012bc:	56                   	push   %esi
4012bd:	75 0b                	jne    0x4012ca
4012bf:	55                   	push   %ebp
4012c0:	55                   	push   %ebp
4012c1:	55                   	push   %ebp
4012c2:	55                   	push   %ebp
4012c3:	55                   	push   %ebp
4012c4:	ff 15 98 70 42 00    	call   *0x427098
4012ca:	57                   	push   %edi
4012cb:	ff 33                	push   (%ebx)
4012cd:	55                   	push   %ebp
4012ce:	ff 15 28 71 42 00    	call   *0x427128
4012d4:	8b 0d 84 6e 83 02    	mov    0x2836e84,%ecx
4012da:	8b f5                	mov    %ebp,%esi
4012dc:	8b f8                	mov    %eax,%edi
4012de:	89 7c 24 24          	mov    %edi,0x24(%esp)
4012e2:	39 33                	cmp    %esi,(%ebx)
4012e4:	0f 86 d3 01 00 00    	jbe    0x4014bd
4012ea:	8b 44 24 1c          	mov    0x1c(%esp),%eax
4012ee:	33 ff                	xor    %edi,%edi
4012f0:	8b 00                	mov    (%eax),%eax
4012f2:	8a 14 28             	mov    (%eax,%ebp,1),%dl
4012f5:	88 54 24 14          	mov    %dl,0x14(%esp)
4012f9:	8a 54 28 01          	mov    0x1(%eax,%ebp,1),%dl
4012fd:	88 54 24 15          	mov    %dl,0x15(%esp)
401301:	8a 54 28 02          	mov    0x2(%eax,%ebp,1),%dl
401305:	8a 44 28 03          	mov    0x3(%eax,%ebp,1),%al
401309:	88 44 24 12          	mov    %al,0x12(%esp)
40130d:	c0 e0 02             	shl    $0x2,%al
401310:	88 54 24 16          	mov    %dl,0x16(%esp)
401314:	88 44 24 13          	mov    %al,0x13(%esp)
401318:	81 f9 a5 02 00 00    	cmp    $0x2a5,%ecx
40131e:	75 38                	jne    0x401358
401320:	57                   	push   %edi
401321:	57                   	push   %edi
401322:	57                   	push   %edi
401323:	57                   	push   %edi
401324:	57                   	push   %edi
401325:	57                   	push   %edi
401326:	ff 15 34 70 42 00    	call   *0x427034
40132c:	89 7c 24 30          	mov    %edi,0x30(%esp)
401330:	33 c0                	xor    %eax,%eax
401332:	8d 7c 24 34          	lea    0x34(%esp),%edi
401336:	ab                   	stos   %eax,%es:(%edi)
401337:	ab                   	stos   %eax,%es:(%edi)
401338:	ab                   	stos   %eax,%es:(%edi)
401339:	ab                   	stos   %eax,%es:(%edi)
40133a:	8d 44 24 30          	lea    0x30(%esp),%eax
40133e:	50                   	push   %eax
40133f:	33 ff                	xor    %edi,%edi
401341:	57                   	push   %edi
401342:	57                   	push   %edi
401343:	57                   	push   %edi
401344:	57                   	push   %edi
401345:	57                   	push   %edi
401346:	ff 15 f4 70 42 00    	call   *0x4270f4
40134c:	57                   	push   %edi
40134d:	57                   	push   %edi
40134e:	ff 15 30 70 42 00    	call   *0x427030
401354:	8a 44 24 13          	mov    0x13(%esp),%al
401358:	c7 44 24 18 f6 8d 8a 	movl   $0x9e8a8df6,0x18(%esp)
40135f:	9e
401360:	81 44 24 18 ca 72 75 	addl   $0x617572ca,0x18(%esp)
401367:	61
401368:	22 44 24 18          	and    0x18(%esp),%al
40136c:	8b 0d 84 6e 83 02    	mov    0x2836e84,%ecx
401372:	88 44 24 13          	mov    %al,0x13(%esp)
401376:	81 f9 a4 0c 00 00    	cmp    $0xca4,%ecx
40137c:	75 1b                	jne    0x401399
40137e:	8d 44 24 20          	lea    0x20(%esp),%eax
401382:	89 7c 24 20          	mov    %edi,0x20(%esp)
401386:	50                   	push   %eax
401387:	57                   	push   %edi
401388:	57                   	push   %edi
401389:	ff 15 2c 70 42 00    	call   *0x42702c
40138f:	8b 0d 84 6e 83 02    	mov    0x2836e84,%ecx
401395:	8a 44 24 13          	mov    0x13(%esp),%al
401399:	08 44 24 14          	or     %al,0x14(%esp)
40139d:	81 f9 2f 0d 00 00    	cmp    $0xd2f,%ecx
4013a3:	75 3f                	jne    0x4013e4
4013a5:	89 7c 24 30          	mov    %edi,0x30(%esp)
4013a9:	33 c0                	xor    %eax,%eax
4013ab:	8d 7c 24 34          	lea    0x34(%esp),%edi
4013af:	ab                   	stos   %eax,%es:(%edi)
4013b0:	ab                   	stos   %eax,%es:(%edi)
4013b1:	ab                   	stos   %eax,%es:(%edi)
4013b2:	ab                   	stos   %eax,%es:(%edi)
4013b3:	8d 44 24 30          	lea    0x30(%esp),%eax
4013b7:	50                   	push   %eax
4013b8:	8d 44 24 48          	lea    0x48(%esp),%eax
4013bc:	33 ff                	xor    %edi,%edi
4013be:	50                   	push   %eax
4013bf:	57                   	push   %edi
4013c0:	ff 15 94 70 42 00    	call   *0x427094
4013c6:	8d 44 24 28          	lea    0x28(%esp),%eax
4013ca:	50                   	push   %eax
4013cb:	8d 44 24 1b          	lea    0x1b(%esp),%eax
4013cf:	50                   	push   %eax
4013d0:	8d 44 24 34          	lea    0x34(%esp),%eax
4013d4:	50                   	push   %eax
4013d5:	57                   	push   %edi
4013d6:	57                   	push   %edi
4013d7:	57                   	push   %edi
4013d8:	ff 15 04 70 42 00    	call   *0x427004
4013de:	8b 0d 84 6e 83 02    	mov    0x2836e84,%ecx
4013e4:	8a 44 24 12          	mov    0x12(%esp),%al
4013e8:	24 fc                	and    $0xfc,%al
4013ea:	c7 05 cc 92 83 02 60 	movl   $0xeb205a60,0x28392cc
4013f1:	5a 20 eb
4013f4:	c0 e0 04             	shl    $0x4,%al
4013f7:	08 44 24 15          	or     %al,0x15(%esp)
4013fb:	81 f9 7b 0e 00 00    	cmp    $0xe7b,%ecx
401401:	75 0e                	jne    0x401411
401403:	57                   	push   %edi
401404:	57                   	push   %edi
401405:	ff 15 40 70 42 00    	call   *0x427040
40140b:	8b 0d 84 6e 83 02    	mov    0x2836e84,%ecx
401411:	c0 64 24 12 06       	shlb   $0x6,0x12(%esp)
401416:	81 f9 e3 0b 00 00    	cmp    $0xbe3,%ecx
40141c:	75 19                	jne    0x401437
40141e:	8d 44 24 44          	lea    0x44(%esp),%eax
401422:	50                   	push   %eax
401423:	ff 15 1c 71 42 00    	call   *0x42711c
401429:	57                   	push   %edi
40142a:	57                   	push   %edi
40142b:	ff 15 90 70 42 00    	call   *0x427090
401431:	8b 0d 84 6e 83 02    	mov    0x2836e84,%ecx
401437:	81 f9 20 01 00 00    	cmp    $0x120,%ecx
40143d:	75 09                	jne    0x401448
40143f:	57                   	push   %edi
401440:	57                   	push   %edi
401441:	57                   	push   %edi
401442:	ff 15 8c 70 42 00    	call   *0x42708c
401448:	8b 7c 24 24          	mov    0x24(%esp),%edi
40144c:	8a 54 24 14          	mov    0x14(%esp),%dl
401450:	8a 44 24 16          	mov    0x16(%esp),%al
401454:	0a 44 24 12          	or     0x12(%esp),%al
401458:	88 14 3e             	mov    %dl,(%esi,%edi,1)
40145b:	83 25 d0 92 83 02 00 	andl   $0x0,0x28392d0
401462:	8a 54 24 15          	mov    0x15(%esp),%dl
401466:	88 54 3e 01          	mov    %dl,0x1(%esi,%edi,1)
40146a:	81 3d 84 6e 83 02 d8 	cmpl   $0x1d8,0x2836e84
401471:	01 00 00
401474:	88 44 24 16          	mov    %al,0x16(%esp)
401478:	75 0e                	jne    0x401488
40147a:	6a 00                	push   $0x0
40147c:	6a 00                	push   $0x0
40147e:	ff 15 6c 70 42 00    	call   *0x42706c
401484:	8a 44 24 16          	mov    0x16(%esp),%al
401488:	c7 05 d4 92 83 02 10 	movl   $0xb7660910,0x28392d4
40148f:	09 66 b7
401492:	88 44 3e 02          	mov    %al,0x2(%esi,%edi,1)
401496:	83 c6 03             	add    $0x3,%esi
401499:	8b 0d 84 6e 83 02    	mov    0x2836e84,%ecx
40149f:	81 f9 d4 02 00 00    	cmp    $0x2d4,%ecx
4014a5:	75 0b                	jne    0x4014b2
4014a7:	0f 57 c0             	xorps  %xmm0,%xmm0
4014aa:	66 0f 13 05 d8 92 83 	movlpd %xmm0,0x28392d8
4014b1:	02
4014b2:	83 c5 04             	add    $0x4,%ebp
4014b5:	3b 2b                	cmp    (%ebx),%ebp
4014b7:	0f 82 2d fe ff ff    	jb     0x4012ea
4014bd:	33 ed                	xor    %ebp,%ebp
4014bf:	81 f9 40 12 00 00    	cmp    $0x1240,%ecx
4014c5:	75 18                	jne    0x4014df
4014c7:	55                   	push   %ebp
4014c8:	ff 15 88 70 42 00    	call   *0x427088
4014ce:	55                   	push   %ebp
4014cf:	55                   	push   %ebp
4014d0:	55                   	push   %ebp
4014d1:	ff 15 bc 70 42 00    	call   *0x4270bc
4014d7:	55                   	push   %ebp
4014d8:	55                   	push   %ebp
4014d9:	ff 15 3c 70 42 00    	call   *0x42703c
4014df:	8b 44 24 1c          	mov    0x1c(%esp),%eax
4014e3:	89 38                	mov    %edi,(%eax)
4014e5:	81 3d 84 6e 83 02 07 	cmpl   $0xd07,0x2836e84
4014ec:	0d 00 00
4014ef:	5f                   	pop    %edi
4014f0:	75 0d                	jne    0x4014ff
4014f2:	8d 44 24 40          	lea    0x40(%esp),%eax
4014f6:	50                   	push   %eax
4014f7:	55                   	push   %ebp
4014f8:	55                   	push   %ebp
4014f9:	ff 15 00 70 42 00    	call   *0x427000
4014ff:	89 33                	mov    %esi,(%ebx)
401501:	5e                   	pop    %esi
401502:	5d                   	pop    %ebp
401503:	5b                   	pop    %ebx
401504:	83 c4 54             	add    $0x54,%esp
401507:	c3                   	ret
401508:	81 ec 84 08 00 00    	sub    $0x884,%esp
40150e:	53                   	push   %ebx
40150f:	55                   	push   %ebp
401510:	8b d9                	mov    %ecx,%ebx
401512:	56                   	push   %esi
401513:	8b 35 84 6e 83 02    	mov    0x2836e84,%esi
401519:	89 5c 24 18          	mov    %ebx,0x18(%esp)
40151d:	8b 2b                	mov    (%ebx),%ebp
40151f:	57                   	push   %edi
401520:	8b fa                	mov    %edx,%edi
401522:	81 fe 4a 05 00 00    	cmp    $0x54a,%esi
401528:	75 35                	jne    0x40155f
40152a:	8d 44 24 34          	lea    0x34(%esp),%eax
40152e:	33 f6                	xor    %esi,%esi
401530:	50                   	push   %eax
401531:	8d 44 24 48          	lea    0x48(%esp),%eax
401535:	50                   	push   %eax
401536:	8d 44 24 44          	lea    0x44(%esp),%eax
40153a:	50                   	push   %eax
40153b:	56                   	push   %esi
40153c:	ff 15 ec 70 42 00    	call   *0x4270ec
401542:	56                   	push   %esi
401543:	56                   	push   %esi
401544:	56                   	push   %esi
401545:	ff 15 a0 70 42 00    	call   *0x4270a0
40154b:	ff 74 24 1c          	push   0x1c(%esp)
40154f:	56                   	push   %esi
401550:	56                   	push   %esi
401551:	56                   	push   %esi
401552:	56                   	push   %esi
401553:	ff 15 10 70 42 00    	call   *0x427010
401559:	8b 35 84 6e 83 02    	mov    0x2836e84,%esi
40155f:	8b 43 04             	mov    0x4(%ebx),%eax
401562:	89 44 24 10          	mov    %eax,0x10(%esp)
401566:	81 fe 33 13 00 00    	cmp    $0x1333,%esi
40156c:	75 12                	jne    0x401580
40156e:	6a 00                	push   $0x0
401570:	6a 00                	push   $0x0
401572:	6a 00                	push   $0x0
401574:	ff 15 24 70 42 00    	call   *0x427024
40157a:	8b 35 84 6e 83 02    	mov    0x2836e84,%esi
401580:	83 25 e0 92 83 02 00 	andl   $0x0,0x28392e0
401587:	c7 44 24 14 20 37 ef 	movl   $0xc6ef3720,0x14(%esp)
40158e:	c6
40158f:	81 fe 61 12 00 00    	cmp    $0x1261,%esi
401595:	75 0e                	jne    0x4015a5
401597:	6a 00                	push   $0x0
401599:	ff 15 00 71 42 00    	call   *0x427100
40159f:	8b 35 84 6e 83 02    	mov    0x2836e84,%esi
4015a5:	81 fe 39 12 00 00    	cmp    $0x1239,%esi
4015ab:	75 23                	jne    0x4015d0
4015ad:	33 f6                	xor    %esi,%esi
4015af:	56                   	push   %esi
4015b0:	56                   	push   %esi
4015b1:	56                   	push   %esi
4015b2:	ff 15 7c 70 42 00    	call   *0x42707c
4015b8:	56                   	push   %esi
4015b9:	56                   	push   %esi
4015ba:	56                   	push   %esi
4015bb:	ff 15 1c 70 42 00    	call   *0x42701c
4015c1:	56                   	push   %esi
4015c2:	56                   	push   %esi
4015c3:	56                   	push   %esi
4015c4:	ff 15 0c 71 42 00    	call   *0x42710c
4015ca:	8b 35 84 6e 83 02    	mov    0x2836e84,%esi
4015d0:	8b 07                	mov    (%edi),%eax
4015d2:	33 d2                	xor    %edx,%edx
4015d4:	8b 4f 08             	mov    0x8(%edi),%ecx
4015d7:	81 fe 85 0f 00 00    	cmp    $0xf85,%esi
4015dd:	8b 5c 24 10          	mov    0x10(%esp),%ebx
4015e1:	89 44 24 24          	mov    %eax,0x24(%esp)
4015e5:	8b 47 04             	mov    0x4(%edi),%eax
4015e8:	89 44 24 28          	mov    %eax,0x28(%esp)
4015ec:	a1 e4 92 83 02       	mov    0x28392e4,%eax
4015f1:	0f 44 c2             	cmove  %edx,%eax
4015f4:	89 4c 24 30          	mov    %ecx,0x30(%esp)
4015f8:	a3 e4 92 83 02       	mov    %eax,0x28392e4
4015fd:	8b 47 0c             	mov    0xc(%edi),%eax
401600:	89 44 24 20          	mov    %eax,0x20(%esp)
401604:	c7 44 24 18 20 00 00 	movl   $0x20,0x18(%esp)
40160b:	00
40160c:	8b c5                	mov    %ebp,%eax
40160e:	c7 05 e8 92 83 02 e6 	movl   $0xff6c6fe6,0x28392e8
401615:	6f 6c ff
401618:	c1 e0 04             	shl    $0x4,%eax
40161b:	03 c1                	add    %ecx,%eax
40161d:	89 44 24 10          	mov    %eax,0x10(%esp)
401621:	81 fe 26 10 00 00    	cmp    $0x1026,%esi
401627:	75 60                	jne    0x401689
401629:	83 64 24 4c 00       	andl   $0x0,0x4c(%esp)
40162e:	8d 7c 24 50          	lea    0x50(%esp),%edi
401632:	33 c0                	xor    %eax,%eax
401634:	ab                   	stos   %eax,%es:(%edi)
401635:	ab                   	stos   %eax,%es:(%edi)
401636:	ab                   	stos   %eax,%es:(%edi)
401637:	ab                   	stos   %eax,%es:(%edi)
401638:	8d 44 24 4c          	lea    0x4c(%esp),%eax
40163c:	50                   	push   %eax
40163d:	33 ff                	xor    %edi,%edi
40163f:	8d 44 24 40          	lea    0x40(%esp),%eax
401643:	50                   	push   %eax
401644:	57                   	push   %edi
401645:	8d 84 24 a0 00 00 00 	lea    0xa0(%esp),%eax
40164c:	50                   	push   %eax
40164d:	57                   	push   %edi
40164e:	57                   	push   %edi
40164f:	57                   	push   %edi
401650:	57                   	push   %edi
401651:	ff 15 f0 70 42 00    	call   *0x4270f0
401657:	57                   	push   %edi
401658:	57                   	push   %edi
401659:	57                   	push   %edi
40165a:	ff 15 0c 71 42 00    	call   *0x42710c
401660:	6a 34                	push   $0x34
401662:	8d 44 24 64          	lea    0x64(%esp),%eax
401666:	57                   	push   %edi
401667:	50                   	push   %eax
401668:	e8 73 73 00 00       	call   0x4089e0
40166d:	83 c4 0c             	add    $0xc,%esp
401670:	8d 44 24 44          	lea    0x44(%esp),%eax
401674:	50                   	push   %eax
401675:	8d 44 24 64          	lea    0x64(%esp),%eax
401679:	50                   	push   %eax
40167a:	57                   	push   %edi