4062d0:	a1 24 f4 42 00       	mov    0x42f424,%eax
4062d5:	33 c9                	xor    %ecx,%ecx
4062d7:	4e                   	dec    %esi
4062d8:	3b c1                	cmp    %ecx,%eax
4062da:	74 18                	je     0x4062f4
4062dc:	39 4d 0c             	cmp    %ecx,0xc(%ebp)
4062df:	74 13                	je     0x4062f4
4062e1:	57                   	push   %edi
4062e2:	51                   	push   %ecx
4062e3:	51                   	push   %ecx
4062e4:	ff 74 b5 e8          	push   -0x18(%ebp,%esi,4)
4062e8:	ff 35 28 f4 42 00    	push   0x42f428
4062ee:	ff d0                	call   *%eax
4062f0:	85 c0                	test   %eax,%eax
4062f2:	74 3b                	je     0x40632f
4062f4:	8d 45 fc             	lea    -0x4(%ebp),%eax
4062f7:	50                   	push   %eax
4062f8:	ff 74 b5 e8          	push   -0x18(%ebp,%esi,4)
4062fc:	ff 35 28 f4 42 00    	push   0x42f428
406302:	ff 15 68 81 40 00    	call   *0x408168
406308:	85 c0                	test   %eax,%eax
40630a:	75 1c                	jne    0x406328
40630c:	57                   	push   %edi
40630d:	ff 75 fc             	push   -0x4(%ebp)
406310:	ff 15 70 81 40 00    	call   *0x408170
406316:	ff 75 fc             	push   -0x4(%ebp)
406319:	89 45 f8             	mov    %eax,-0x8(%ebp)
40631c:	ff 15 88 82 40 00    	call   *0x408288
406322:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
406326:	75 07                	jne    0x40632f
406328:	80 27 00             	andb   $0x0,(%edi)
40632b:	85 f6                	test   %esi,%esi
40632d:	75 a1                	jne    0x4062d0
40632f:	80 3f 00             	cmpb   $0x0,(%edi)
406332:	74 11                	je     0x406345
406334:	83 7d f4 1a          	cmpl   $0x1a,-0xc(%ebp)
406338:	75 0b                	jne    0x406345
40633a:	68 d4 83 40 00       	push   $0x4083d4
40633f:	57                   	push   %edi
406340:	e8 3d fe ff ff       	call   0x406182
406345:	57                   	push   %edi
406346:	e8 85 00 00 00       	call   0x4063d0
40634b:	eb 44                	jmp    0x406391
40634d:	80 fa 03             	cmp    $0x3,%dl
406350:	75 2e                	jne    0x406380
406352:	83 fe 1d             	cmp    $0x1d,%esi
406355:	75 0e                	jne    0x406365
406357:	ff 35 28 f4 42 00    	push   0x42f428
40635d:	57                   	push   %edi
40635e:	e8 61 fd ff ff       	call   0x4060c4
406363:	eb 11                	jmp    0x406376
406365:	8b c6                	mov    %esi,%eax
406367:	c1 e0 0a             	shl    $0xa,%eax
40636a:	05 00 00 43 00       	add    $0x430000,%eax
40636f:	50                   	push   %eax
406370:	57                   	push   %edi
406371:	e8 f0 fd ff ff       	call   0x406166
406376:	83 c6 eb             	add    $0xffffffeb,%esi
406379:	83 fe 07             	cmp    $0x7,%esi
40637c:	73 13                	jae    0x406391
40637e:	eb c5                	jmp    0x406345
406380:	80 fa 01             	cmp    $0x1,%dl
406383:	75 0c                	jne    0x406391
406385:	83 c8 ff             	or     $0xffffffff,%eax
406388:	2b c6                	sub    %esi,%eax
40638a:	50                   	push   %eax
40638b:	57                   	push   %edi
40638c:	e8 f7 fd ff ff       	call   0x406188
406391:	57                   	push   %edi
406392:	e8 e5 fd ff ff       	call   0x40617c
406397:	03 f8                	add    %eax,%edi
406399:	b8 c0 e3 42 00       	mov    $0x42e3c0,%eax
40639e:	eb 0d                	jmp    0x4063ad
4063a0:	75 08                	jne    0x4063aa
4063a2:	8a 0b                	mov    (%ebx),%cl
4063a4:	88 0f                	mov    %cl,(%edi)
4063a6:	47                   	inc    %edi
4063a7:	43                   	inc    %ebx
4063a8:	eb 03                	jmp    0x4063ad
4063aa:	88 17                	mov    %dl,(%edi)
4063ac:	47                   	inc    %edi
4063ad:	8a 13                	mov    (%ebx),%dl
4063af:	84 d2                	test   %dl,%dl
4063b1:	0f 85 28 fe ff ff    	jne    0x4061df
4063b7:	80 27 00             	andb   $0x0,(%edi)
4063ba:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
4063be:	5f                   	pop    %edi
4063bf:	5e                   	pop    %esi
4063c0:	5b                   	pop    %ebx
4063c1:	74 09                	je     0x4063cc
4063c3:	50                   	push   %eax
4063c4:	ff 75 08             	push   0x8(%ebp)
4063c7:	e8 9a fd ff ff       	call   0x406166
4063cc:	c9                   	leave
4063cd:	c2 08 00             	ret    $0x8
4063d0:	53                   	push   %ebx
4063d1:	56                   	push   %esi
4063d2:	8b 74 24 0c          	mov    0xc(%esp),%esi
4063d6:	57                   	push   %edi
4063d7:	80 3e 5c             	cmpb   $0x5c,(%esi)
4063da:	75 15                	jne    0x4063f1
4063dc:	80 7e 01 5c          	cmpb   $0x5c,0x1(%esi)
4063e0:	75 0f                	jne    0x4063f1
4063e2:	80 7e 02 3f          	cmpb   $0x3f,0x2(%esi)
4063e6:	75 09                	jne    0x4063f1
4063e8:	80 7e 03 5c          	cmpb   $0x5c,0x3(%esi)
4063ec:	75 03                	jne    0x4063f1
4063ee:	83 c6 04             	add    $0x4,%esi
4063f1:	80 3e 00             	cmpb   $0x0,(%esi)
4063f4:	74 0c                	je     0x406402
4063f6:	56                   	push   %esi
4063f7:	e8 6f f7 ff ff       	call   0x405b6b
4063fc:	85 c0                	test   %eax,%eax
4063fe:	74 02                	je     0x406402
406400:	46                   	inc    %esi
406401:	46                   	inc    %esi
406402:	8a 06                	mov    (%esi),%al
406404:	8b de                	mov    %esi,%ebx
406406:	84 c0                	test   %al,%al
406408:	8b fe                	mov    %esi,%edi
40640a:	74 39                	je     0x406445
40640c:	55                   	push   %ebp
40640d:	8b 2d 2c 82 40 00    	mov    0x40822c,%ebp
406413:	3c 1f                	cmp    $0x1f,%al
406415:	76 22                	jbe    0x406439
406417:	50                   	push   %eax
406418:	68 e8 a3 40 00       	push   $0x40a3e8
40641d:	e8 07 f7 ff ff       	call   0x405b29
406422:	80 38 00             	cmpb   $0x0,(%eax)
406425:	75 12                	jne    0x406439
406427:	56                   	push   %esi
406428:	ff d5                	call   *%ebp
40642a:	2b c6                	sub    %esi,%eax
40642c:	50                   	push   %eax
40642d:	56                   	push   %esi
40642e:	57                   	push   %edi
40642f:	e8 86 f8 ff ff       	call   0x405cba
406434:	57                   	push   %edi
406435:	ff d5                	call   *%ebp
406437:	8b f8                	mov    %eax,%edi
406439:	56                   	push   %esi
40643a:	ff d5                	call   *%ebp
40643c:	8b f0                	mov    %eax,%esi
40643e:	8a 06                	mov    (%esi),%al
406440:	84 c0                	test   %al,%al
406442:	75 cf                	jne    0x406413
406444:	5d                   	pop    %ebp
406445:	80 27 00             	andb   $0x0,(%edi)
406448:	57                   	push   %edi
406449:	53                   	push   %ebx
40644a:	ff 15 e4 81 40 00    	call   *0x4081e4
406450:	8b f8                	mov    %eax,%edi
406452:	8a 07                	mov    (%edi),%al
406454:	3c 20                	cmp    $0x20,%al
406456:	74 04                	je     0x40645c
406458:	3c 5c                	cmp    $0x5c,%al
40645a:	75 07                	jne    0x406463
40645c:	80 27 00             	andb   $0x0,(%edi)
40645f:	3b df                	cmp    %edi,%ebx
406461:	72 e5                	jb     0x406448
406463:	5f                   	pop    %edi
406464:	5e                   	pop    %esi
406465:	5b                   	pop    %ebx
406466:	c2 04 00             	ret    $0x4
406469:	56                   	push   %esi
40646a:	be e8 c0 42 00       	mov    $0x42c0e8,%esi
40646f:	56                   	push   %esi
406470:	ff 74 24 0c          	push   0xc(%esp)
406474:	ff 15 2c 81 40 00    	call   *0x40812c
40647a:	83 f8 ff             	cmp    $0xffffffff,%eax
40647d:	74 0b                	je     0x40648a
40647f:	50                   	push   %eax
406480:	ff 15 34 81 40 00    	call   *0x408134
406486:	8b c6                	mov    %esi,%eax
406488:	eb 02                	jmp    0x40648c
40648a:	33 c0                	xor    %eax,%eax
40648c:	5e                   	pop    %esi
40648d:	c2 04 00             	ret    $0x4
406490:	55                   	push   %ebp
406491:	8b ec                	mov    %esp,%ebp
406493:	81 ec 20 01 00 00    	sub    $0x120,%esp
406499:	56                   	push   %esi
40649a:	be 04 01 00 00       	mov    $0x104,%esi
40649f:	8d 85 e0 fe ff ff    	lea    -0x120(%ebp),%eax
4064a5:	56                   	push   %esi
4064a6:	50                   	push   %eax
4064a7:	ff 15 e4 80 40 00    	call   *0x4080e4
4064ad:	3b c6                	cmp    %esi,%eax
4064af:	5e                   	pop    %esi
4064b0:	76 02                	jbe    0x4064b4
4064b2:	33 c0                	xor    %eax,%eax
4064b4:	85 c0                	test   %eax,%eax
4064b6:	74 0e                	je     0x4064c6
4064b8:	80 bc 05 df fe ff ff 	cmpb   $0x5c,-0x121(%ebp,%eax,1)
4064bf:	5c
4064c0:	74 04                	je     0x4064c6
4064c2:	33 c9                	xor    %ecx,%ecx
4064c4:	eb 03                	jmp    0x4064c9
4064c6:	33 c9                	xor    %ecx,%ecx
4064c8:	41                   	inc    %ecx
4064c9:	ff 75 08             	push   0x8(%ebp)
4064cc:	8d 89 14 a0 40 00    	lea    0x40a014(%ecx),%ecx
4064d2:	8d 84 05 e0 fe ff ff 	lea    -0x120(%ebp,%eax,1),%eax
4064d9:	51                   	push   %ecx
4064da:	68 f4 a3 40 00       	push   $0x40a3f4
4064df:	50                   	push   %eax
4064e0:	ff 15 74 82 40 00    	call   *0x408274
4064e6:	83 c4 10             	add    $0x10,%esp
4064e9:	8d 85 e0 fe ff ff    	lea    -0x120(%ebp),%eax
4064ef:	6a 08                	push   $0x8
4064f1:	6a 00                	push   $0x0
4064f3:	50                   	push   %eax
4064f4:	ff 15 50 81 40 00    	call   *0x408150
4064fa:	c9                   	leave
4064fb:	c2 04 00             	ret    $0x4
4064fe:	8b 44 24 04          	mov    0x4(%esp),%eax
406502:	56                   	push   %esi
406503:	8b f0                	mov    %eax,%esi
406505:	57                   	push   %edi
406506:	c1 e6 03             	shl    $0x3,%esi
406509:	8b be 58 a2 40 00    	mov    0x40a258(%esi),%edi
40650f:	57                   	push   %edi
406510:	ff 15 54 81 40 00    	call   *0x408154
406516:	85 c0                	test   %eax,%eax
406518:	75 0a                	jne    0x406524
40651a:	57                   	push   %edi
40651b:	e8 70 ff ff ff       	call   0x406490
406520:	85 c0                	test   %eax,%eax
406522:	74 0f                	je     0x406533
406524:	ff b6 5c a2 40 00    	push   0x40a25c(%esi)
40652a:	50                   	push   %eax
40652b:	ff 15 e8 80 40 00    	call   *0x4080e8
406531:	eb 02                	jmp    0x406535
406533:	33 c0                	xor    %eax,%eax
406535:	5f                   	pop    %edi
406536:	5e                   	pop    %esi
406537:	c2 04 00             	ret    $0x4
40653a:	55                   	push   %ebp
40653b:	8b ec                	mov    %esp,%ebp
40653d:	83 ec 1c             	sub    $0x1c,%esp
406540:	56                   	push   %esi
406541:	8b 75 08             	mov    0x8(%ebp),%esi
406544:	57                   	push   %edi
406545:	8b 3d ec 81 40 00    	mov    0x4081ec,%edi
40654b:	eb 0a                	jmp    0x406557
40654d:	8d 45 e4             	lea    -0x1c(%ebp),%eax
406550:	50                   	push   %eax
406551:	ff 15 e8 81 40 00    	call   *0x4081e8
406557:	6a 01                	push   $0x1
406559:	56                   	push   %esi
40655a:	56                   	push   %esi
40655b:	8d 45 e4             	lea    -0x1c(%ebp),%eax
40655e:	6a 00                	push   $0x0
406560:	50                   	push   %eax
406561:	ff d7                	call   *%edi
406563:	85 c0                	test   %eax,%eax
406565:	75 e6                	jne    0x40654d
406567:	5f                   	pop    %edi
406568:	5e                   	pop    %esi
406569:	c9                   	leave
40656a:	c2 04 00             	ret    $0x4
40656d:	ff 25 e8 80 40 00    	jmp    *0x4080e8
406573:	55                   	push   %ebp
406574:	8b ec                	mov    %esp,%ebp
406576:	51                   	push   %ecx
406577:	56                   	push   %esi
406578:	8b 35 f0 80 40 00    	mov    0x4080f0,%esi
40657e:	57                   	push   %edi
40657f:	6a 64                	push   $0x64
406581:	ff 75 08             	push   0x8(%ebp)
406584:	ff d6                	call   *%esi
406586:	bf 02 01 00 00       	mov    $0x102,%edi
40658b:	eb 0e                	jmp    0x40659b
40658d:	6a 0f                	push   $0xf
40658f:	e8 a6 ff ff ff       	call   0x40653a
406594:	6a 64                	push   $0x64
406596:	ff 75 08             	push   0x8(%ebp)
406599:	ff d6                	call   *%esi
40659b:	3b c7                	cmp    %edi,%eax
40659d:	74 ee                	je     0x40658d
40659f:	8d 45 fc             	lea    -0x4(%ebp),%eax
4065a2:	50                   	push   %eax
4065a3:	ff 75 08             	push   0x8(%ebp)
4065a6:	ff 15 ec 80 40 00    	call   *0x4080ec
4065ac:	8b 45 fc             	mov    -0x4(%ebp),%eax
4065af:	5f                   	pop    %edi
4065b0:	5e                   	pop    %esi
4065b1:	c9                   	leave
4065b2:	c2 04 00             	ret    $0x4
4065b5:	83 3d 2c ce 42 00 00 	cmpl   $0x0,0x42ce2c
4065bc:	56                   	push   %esi
4065bd:	75 2d                	jne    0x4065ec
4065bf:	33 c9                	xor    %ecx,%ecx
4065c1:	6a 08                	push   $0x8
4065c3:	8b c1                	mov    %ecx,%eax
4065c5:	5e                   	pop    %esi
4065c6:	8b d0                	mov    %eax,%edx
4065c8:	80 e2 01             	and    $0x1,%dl
4065cb:	f6 da                	neg    %dl
4065cd:	1b d2                	sbb    %edx,%edx
4065cf:	81 e2 20 83 b8 ed    	and    $0xedb88320,%edx
4065d5:	d1 e8                	shr    $1,%eax
4065d7:	33 c2                	xor    %edx,%eax
4065d9:	4e                   	dec    %esi
4065da:	75 ea                	jne    0x4065c6
4065dc:	89 04 8d 28 ce 42 00 	mov    %eax,0x42ce28(,%ecx,4)
4065e3:	41                   	inc    %ecx
4065e4:	81 f9 00 01 00 00    	cmp    $0x100,%ecx
4065ea:	7c d5                	jl     0x4065c1
4065ec:	8b 54 24 10          	mov    0x10(%esp),%edx
4065f0:	8b 44 24 08          	mov    0x8(%esp),%eax
4065f4:	85 d2                	test   %edx,%edx
4065f6:	f7 d0                	not    %eax
4065f8:	76 23                	jbe    0x40661d
4065fa:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
4065fe:	57                   	push   %edi
4065ff:	0f b6 39             	movzbl (%ecx),%edi
406602:	8b f0                	mov    %eax,%esi
406604:	81 e6 ff 00 00 00    	and    $0xff,%esi
40660a:	33 f7                	xor    %edi,%esi
40660c:	c1 e8 08             	shr    $0x8,%eax
40660f:	8b 34 b5 28 ce 42 00 	mov    0x42ce28(,%esi,4),%esi
406616:	33 c6                	xor    %esi,%eax
406618:	41                   	inc    %ecx
406619:	4a                   	dec    %edx
40661a:	75 e3                	jne    0x4065ff
40661c:	5f                   	pop    %edi
40661d:	f7 d0                	not    %eax
40661f:	5e                   	pop    %esi
406620:	c2 0c 00             	ret    $0xc
406623:	55                   	push   %ebp
406624:	8b ec                	mov    %esp,%ebp
406626:	83 ec 44             	sub    $0x44,%esp
406629:	8b 45 08             	mov    0x8(%ebp),%eax
40662c:	53                   	push   %ebx
40662d:	56                   	push   %esi
40662e:	57                   	push   %edi
40662f:	8b 08                	mov    (%eax),%ecx
406631:	8d 70 10             	lea    0x10(%eax),%esi
406634:	8b 40 04             	mov    0x4(%eax),%eax
406637:	89 4d c8             	mov    %ecx,-0x38(%ebp)
40663a:	8b 8e a8 9b 00 00    	mov    0x9ba8(%esi),%ecx
406640:	8b 9e 18 05 00 00    	mov    0x518(%esi),%ebx
406646:	89 45 cc             	mov    %eax,-0x34(%ebp)
406649:	8b 86 1c 05 00 00    	mov    0x51c(%esi),%eax
40664f:	89 45 c0             	mov    %eax,-0x40(%ebp)
406652:	8b 86 a4 9b 00 00    	mov    0x9ba4(%esi),%eax
406658:	3b c8                	cmp    %eax,%ecx
40665a:	89 4d d0             	mov    %ecx,-0x30(%ebp)
40665d:	73 05                	jae    0x406664