40302a:	85 c0                	test   %eax,%eax
40302c:	7c 0e                	jl     0x40303c
40302e:	8b 0d 78 37 42 00    	mov    0x423778,%ecx
403034:	03 c8                	add    %eax,%ecx
403036:	51                   	push   %ecx
403037:	e8 b1 01 00 00       	call   0x4031ed
40303c:	8d 45 14             	lea    0x14(%ebp),%eax
40303f:	6a 04                	push   $0x4
403041:	50                   	push   %eax
403042:	e8 90 01 00 00       	call   0x4031d7
403047:	85 c0                	test   %eax,%eax
403049:	0f 84 3f 01 00 00    	je     0x40318e
40304f:	f6 45 17 80          	testb  $0x80,0x17(%ebp)
403053:	0f 84 1e 01 00 00    	je     0x403177
403059:	ff 15 90 70 40 00    	call   *0x407090
40305f:	b9 30 a8 40 00       	mov    $0x40a830,%ecx
403064:	89 45 f4             	mov    %eax,-0xc(%ebp)
403067:	e8 2b 34 00 00       	call   0x406497
40306c:	81 65 14 ff ff ff 7f 	andl   $0x7fffffff,0x14(%ebp)
403073:	8b 45 14             	mov    0x14(%ebp),%eax
403076:	89 45 08             	mov    %eax,0x8(%ebp)
403079:	0f 8e 4e 01 00 00    	jle    0x4031cd
40307f:	be 00 40 00 00       	mov    $0x4000,%esi
403084:	39 75 14             	cmp    %esi,0x14(%ebp)
403087:	7d 03                	jge    0x40308c
403089:	8b 75 14             	mov    0x14(%ebp),%esi
40308c:	bf c0 28 41 00       	mov    $0x4128c0,%edi
403091:	56                   	push   %esi
403092:	57                   	push   %edi
403093:	e8 3f 01 00 00       	call   0x4031d7
403098:	85 c0                	test   %eax,%eax
40309a:	0f 84 ee 00 00 00    	je     0x40318e
4030a0:	29 75 14             	sub    %esi,0x14(%ebp)
4030a3:	89 3d 48 a8 40 00    	mov    %edi,0x40a848
4030a9:	89 35 4c a8 40 00    	mov    %esi,0x40a84c
4030af:	8b 45 f8             	mov    -0x8(%ebp),%eax
4030b2:	b9 30 a8 40 00       	mov    $0x40a830,%ecx
4030b7:	89 1d 50 a8 40 00    	mov    %ebx,0x40a850
4030bd:	a3 54 a8 40 00       	mov    %eax,0x40a854
4030c2:	e8 f0 33 00 00       	call   0x4064b7
4030c7:	85 c0                	test   %eax,%eax
4030c9:	89 45 f0             	mov    %eax,-0x10(%ebp)
4030cc:	0f 8c 9d 00 00 00    	jl     0x40316f
4030d2:	8b 35 50 a8 40 00    	mov    0x40a850,%esi
4030d8:	2b f3                	sub    %ebx,%esi
4030da:	ff 15 90 70 40 00    	call   *0x407090
4030e0:	f6 05 d4 37 42 00 01 	testb  $0x1,0x4237d4
4030e7:	8b f8                	mov    %eax,%edi
4030e9:	74 43                	je     0x40312e
4030eb:	2b 45 f4             	sub    -0xc(%ebp),%eax
4030ee:	3d c8 00 00 00       	cmp    $0xc8,%eax
4030f3:	77 06                	ja     0x4030fb
4030f5:	83 7d 14 00          	cmpl   $0x0,0x14(%ebp)
4030f9:	75 33                	jne    0x40312e
4030fb:	8b 45 08             	mov    0x8(%ebp),%eax
4030fe:	ff 75 08             	push   0x8(%ebp)
403101:	2b 45 14             	sub    0x14(%ebp),%eax
403104:	6a 64                	push   $0x64
403106:	50                   	push   %eax
403107:	ff 15 44 71 40 00    	call   *0x407144
40310d:	50                   	push   %eax
40310e:	8d 45 b0             	lea    -0x50(%ebp),%eax
403111:	68 20 91 40 00       	push   $0x409120
403116:	50                   	push   %eax
403117:	ff 15 74 72 40 00    	call   *0x407274
40311d:	83 c4 0c             	add    $0xc,%esp
403120:	8d 45 b0             	lea    -0x50(%ebp),%eax
403123:	50                   	push   %eax
403124:	6a 00                	push   $0x0
403126:	e8 d6 1f 00 00       	call   0x405101
40312b:	89 7d f4             	mov    %edi,-0xc(%ebp)
40312e:	85 f6                	test   %esi,%esi
403130:	74 31                	je     0x403163
403132:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
403136:	75 13                	jne    0x40314b
403138:	56                   	push   %esi
403139:	53                   	push   %ebx
40313a:	ff 75 0c             	push   0xc(%ebp)
40313d:	e8 d8 2a 00 00       	call   0x405c1a
403142:	85 c0                	test   %eax,%eax
403144:	74 2d                	je     0x403173
403146:	01 75 fc             	add    %esi,-0x4(%ebp)
403149:	eb 0c                	jmp    0x403157
40314b:	01 75 fc             	add    %esi,-0x4(%ebp)
40314e:	29 75 f8             	sub    %esi,-0x8(%ebp)
403151:	8b 1d 50 a8 40 00    	mov    0x40a850,%ebx
403157:	83 7d f0 01          	cmpl   $0x1,-0x10(%ebp)
40315b:	0f 85 4e ff ff ff    	jne    0x4030af
403161:	eb 6a                	jmp    0x4031cd
403163:	83 7d 14 00          	cmpl   $0x0,0x14(%ebp)
403167:	0f 8f 12 ff ff ff    	jg     0x40307f
40316d:	eb 5e                	jmp    0x4031cd
40316f:	6a fc                	push   $0xfffffffc
403171:	eb 1d                	jmp    0x403190
403173:	6a fe                	push   $0xfffffffe
403175:	eb 19                	jmp    0x403190
403177:	85 ff                	test   %edi,%edi
403179:	74 47                	je     0x4031c2
40317b:	39 75 14             	cmp    %esi,0x14(%ebp)
40317e:	7d 03                	jge    0x403183
403180:	8b 75 14             	mov    0x14(%ebp),%esi
403183:	56                   	push   %esi
403184:	57                   	push   %edi
403185:	e8 4d 00 00 00       	call   0x4031d7
40318a:	85 c0                	test   %eax,%eax
40318c:	75 3c                	jne    0x4031ca
40318e:	6a fd                	push   $0xfffffffd
403190:	58                   	pop    %eax
403191:	eb 3d                	jmp    0x4031d0
403193:	8b 75 f8             	mov    -0x8(%ebp),%esi
403196:	39 75 14             	cmp    %esi,0x14(%ebp)
403199:	7d 03                	jge    0x40319e
40319b:	8b 75 14             	mov    0x14(%ebp),%esi
40319e:	bf c0 28 41 00       	mov    $0x4128c0,%edi
4031a3:	56                   	push   %esi
4031a4:	57                   	push   %edi
4031a5:	e8 2d 00 00 00       	call   0x4031d7
4031aa:	85 c0                	test   %eax,%eax
4031ac:	74 e0                	je     0x40318e
4031ae:	56                   	push   %esi
4031af:	57                   	push   %edi
4031b0:	ff 75 0c             	push   0xc(%ebp)
4031b3:	e8 62 2a 00 00       	call   0x405c1a
4031b8:	85 c0                	test   %eax,%eax
4031ba:	74 b7                	je     0x403173
4031bc:	01 75 fc             	add    %esi,-0x4(%ebp)
4031bf:	29 75 14             	sub    %esi,0x14(%ebp)
4031c2:	83 7d 14 00          	cmpl   $0x0,0x14(%ebp)
4031c6:	7f cb                	jg     0x403193
4031c8:	eb 03                	jmp    0x4031cd
4031ca:	89 75 fc             	mov    %esi,-0x4(%ebp)
4031cd:	8b 45 fc             	mov    -0x4(%ebp),%eax
4031d0:	5f                   	pop    %edi
4031d1:	5e                   	pop    %esi
4031d2:	5b                   	pop    %ebx
4031d3:	c9                   	leave
4031d4:	c2 10 00             	ret    $0x10
4031d7:	ff 74 24 08          	push   0x8(%esp)
4031db:	ff 74 24 08          	push   0x8(%esp)
4031df:	ff 35 18 90 40 00    	push   0x409018
4031e5:	e8 01 2a 00 00       	call   0x405beb
4031ea:	c2 08 00             	ret    $0x8
4031ed:	6a 00                	push   $0x0
4031ef:	6a 00                	push   $0x0
4031f1:	ff 74 24 0c          	push   0xc(%esp)
4031f5:	ff 35 18 90 40 00    	push   0x409018
4031fb:	ff 15 38 71 40 00    	call   *0x407138
403201:	c2 04 00             	ret    $0x4
403204:	56                   	push   %esi
403205:	be 00 a4 42 00       	mov    $0x42a400,%esi
40320a:	56                   	push   %esi
40320b:	e8 34 30 00 00       	call   0x406244
403210:	56                   	push   %esi
403211:	e8 c9 27 00 00       	call   0x4059df
403216:	85 c0                	test   %eax,%eax
403218:	75 02                	jne    0x40321c
40321a:	5e                   	pop    %esi
40321b:	c3                   	ret
40321c:	56                   	push   %esi
40321d:	e8 50 27 00 00       	call   0x405972
403222:	56                   	push   %esi
403223:	e8 1c 24 00 00       	call   0x405644
403228:	56                   	push   %esi
403229:	68 00 a0 42 00       	push   $0x42a000
40322e:	e8 6f 29 00 00       	call   0x405ba2
403233:	5e                   	pop    %esi
403234:	c3                   	ret
403235:	81 ec 84 01 00 00    	sub    $0x184,%esp
40323b:	53                   	push   %ebx
40323c:	56                   	push   %esi
40323d:	57                   	push   %edi
40323e:	33 db                	xor    %ebx,%ebx
403240:	68 01 80 00 00       	push   $0x8001
403245:	89 5c 24 18          	mov    %ebx,0x18(%esp)
403249:	c7 44 24 10 98 91 40 	movl   $0x409198,0x10(%esp)
403250:	00
403251:	89 5c 24 20          	mov    %ebx,0x20(%esp)
403255:	c6 44 24 14 20       	movb   $0x20,0x14(%esp)
40325a:	ff 15 a0 70 40 00    	call   *0x4070a0
403260:	ff 15 9c 70 40 00    	call   *0x40709c
403266:	25 ff ff ff bf       	and    $0xbfffffff,%eax
40326b:	66 3d 06 00          	cmp    $0x6,%ax
40326f:	a3 0c 37 42 00       	mov    %eax,0x42370c
403274:	74 11                	je     0x403287
403276:	53                   	push   %ebx
403277:	e8 f6 30 00 00       	call   0x406372
40327c:	3b c3                	cmp    %ebx,%eax
40327e:	74 07                	je     0x403287
403280:	68 00 0c 00 00       	push   $0xc00
403285:	ff d0                	call   *%eax
403287:	be 98 72 40 00       	mov    $0x407298,%esi
40328c:	56                   	push   %esi
40328d:	e8 72 30 00 00       	call   0x406304
403292:	56                   	push   %esi
403293:	ff 15 98 70 40 00    	call   *0x407098
403299:	8d 74 06 01          	lea    0x1(%esi,%eax,1),%esi
40329d:	38 1e                	cmp    %bl,(%esi)
40329f:	75 eb                	jne    0x40328c
4032a1:	6a 0a                	push   $0xa
4032a3:	e8 ca 30 00 00       	call   0x406372
4032a8:	6a 08                	push   $0x8
4032aa:	e8 c3 30 00 00       	call   0x406372
4032af:	6a 06                	push   $0x6
4032b1:	a3 04 37 42 00       	mov    %eax,0x423704
4032b6:	e8 b7 30 00 00       	call   0x406372
4032bb:	3b c3                	cmp    %ebx,%eax
4032bd:	74 0f                	je     0x4032ce
4032bf:	6a 1e                	push   $0x1e
4032c1:	ff d0                	call   *%eax
4032c3:	85 c0                	test   %eax,%eax
4032c5:	74 07                	je     0x4032ce
4032c7:	80 0d 0f 37 42 00 40 	orb    $0x40,0x42370f
4032ce:	55                   	push   %ebp
4032cf:	ff 15 40 70 40 00    	call   *0x407040
4032d5:	53                   	push   %ebx
4032d6:	ff 15 84 72 40 00    	call   *0x407284
4032dc:	a3 d8 37 42 00       	mov    %eax,0x4237d8
4032e1:	53                   	push   %ebx
4032e2:	8d 44 24 38          	lea    0x38(%esp),%eax
4032e6:	68 60 01 00 00       	push   $0x160
4032eb:	50                   	push   %eax
4032ec:	53                   	push   %ebx
4032ed:	68 c8 ec 41 00       	push   $0x41ecc8
4032f2:	ff 15 78 71 40 00    	call   *0x407178
4032f8:	68 88 91 40 00       	push   $0x409188
4032fd:	68 00 2f 42 00       	push   $0x422f00
403302:	e8 d3 2c 00 00       	call   0x405fda
403307:	ff 15 94 70 40 00    	call   *0x407094
40330d:	bd 00 90 42 00       	mov    $0x429000,%ebp
403312:	50                   	push   %eax
403313:	55                   	push   %ebp
403314:	e8 c1 2c 00 00       	call   0x405fda
403319:	80 3d 00 90 42 00 22 	cmpb   $0x22,0x429000
403320:	c7 05 00 37 42 00 00 	movl   $0x400000,0x423700
403327:	00 40 00
40332a:	8b c5                	mov    %ebp,%eax
40332c:	75 0a                	jne    0x403338
40332e:	c6 44 24 14 22       	movb   $0x22,0x14(%esp)
403333:	b8 01 90 42 00       	mov    $0x429001,%eax
403338:	ff 74 24 14          	push   0x14(%esp)
40333c:	50                   	push   %eax
40333d:	e8 5b 26 00 00       	call   0x40599d
403342:	50                   	push   %eax
403343:	ff 15 2c 72 40 00    	call   *0x40722c
403349:	89 44 24 1c          	mov    %eax,0x1c(%esp)
40334d:	e9 c0 00 00 00       	jmp    0x403412
403352:	80 f9 20             	cmp    $0x20,%cl
403355:	75 06                	jne    0x40335d
403357:	40                   	inc    %eax
403358:	80 38 20             	cmpb   $0x20,(%eax)
40335b:	74 fa                	je     0x403357
40335d:	80 38 22             	cmpb   $0x22,(%eax)
403360:	c6 44 24 14 20       	movb   $0x20,0x14(%esp)
403365:	75 06                	jne    0x40336d
403367:	40                   	inc    %eax
403368:	c6 44 24 14 22       	movb   $0x22,0x14(%esp)
40336d:	80 38 2f             	cmpb   $0x2f,(%eax)
403370:	0f 85 8c 00 00 00    	jne    0x403402
403376:	40                   	inc    %eax
403377:	80 38 53             	cmpb   $0x53,(%eax)
40337a:	75 16                	jne    0x403392
40337c:	8a 48 01             	mov    0x1(%eax),%cl
40337f:	80 f9 20             	cmp    $0x20,%cl
403382:	74 04                	je     0x403388
403384:	3a cb                	cmp    %bl,%cl
403386:	75 0a                	jne    0x403392
403388:	c7 05 c0 37 42 00 01 	movl   $0x1,0x4237c0
40338f:	00 00 00
403392:	0f be 0d 83 91 40 00 	movsbl 0x409183,%ecx
403399:	0f be 15 82 91 40 00 	movsbl 0x409182,%edx
4033a0:	c1 e1 08             	shl    $0x8,%ecx
4033a3:	0b ca                	or     %edx,%ecx
4033a5:	0f be 15 81 91 40 00 	movsbl 0x409181,%edx
4033ac:	c1 e1 08             	shl    $0x8,%ecx
4033af:	0b ca                	or     %edx,%ecx
4033b1:	0f be 15 80 91 40 00 	movsbl 0x409180,%edx
4033b8:	c1 e1 08             	shl    $0x8,%ecx
4033bb:	0b ca                	or     %edx,%ecx
4033bd:	39 08                	cmp    %ecx,(%eax)
4033bf:	75 11                	jne    0x4033d2
4033c1:	8a 48 04             	mov    0x4(%eax),%cl
4033c4:	80 f9 20             	cmp    $0x20,%cl
4033c7:	74 04                	je     0x4033cd
4033c9:	3a cb                	cmp    %bl,%cl
4033cb:	75 05                	jne    0x4033d2
4033cd:	83 4c 24 20 04       	orl    $0x4,0x20(%esp)
4033d2:	0f be 0d 7b 91 40 00 	movsbl 0x40917b,%ecx
4033d9:	0f be 15 7a 91 40 00 	movsbl 0x40917a,%edx
4033e0:	c1 e1 08             	shl    $0x8,%ecx
4033e3:	0b ca                	or     %edx,%ecx
4033e5:	0f be 15 79 91 40 00 	movsbl 0x409179,%edx
4033ec:	c1 e1 08             	shl    $0x8,%ecx
4033ef:	0b ca                	or     %edx,%ecx
4033f1:	0f be 15 78 91 40 00 	movsbl 0x409178,%edx
4033f8:	c1 e1 08             	shl    $0x8,%ecx
4033fb:	0b ca                	or     %edx,%ecx
4033fd:	39 48 fe             	cmp    %ecx,-0x2(%eax)
403400:	74 1c                	je     0x40341e
403402:	ff 74 24 14          	push   0x14(%esp)
403406:	50                   	push   %eax
403407:	e8 91 25 00 00       	call   0x40599d
40340c:	80 38 22             	cmpb   $0x22,(%eax)
40340f:	75 01                	jne    0x403412
403411:	40                   	inc    %eax
403412:	8a 08                	mov    (%eax),%cl
403414:	3a cb                	cmp    %bl,%cl
403416:	0f 85 36 ff ff ff    	jne    0x403352
40341c:	eb 11                	jmp    0x40342f
40341e:	88 58 fe             	mov    %bl,-0x2(%eax)
403421:	83 c0 02             	add    $0x2,%eax
403424:	50                   	push   %eax
403425:	68 00 94 42 00       	push   $0x429400
40342a:	e8 ab 2b 00 00       	call   0x405fda
40342f:	8b 3d 70 70 40 00    	mov    0x407070,%edi
403435:	be 00 a4 42 00       	mov    $0x42a400,%esi
40343a:	56                   	push   %esi
40343b:	68 00 04 00 00       	push   $0x400
403440:	ff d7                	call   *%edi
403442:	e8 bd fd ff ff       	call   0x403204
403447:	85 c0                	test   %eax,%eax
403449:	75 56                	jne    0x4034a1
40344b:	68 fb 03 00 00       	push   $0x3fb
403450:	56                   	push   %esi
403451:	ff 15 b0 70 40 00    	call   *0x4070b0
403457:	68 70 91 40 00       	push   $0x409170
40345c:	56                   	push   %esi
40345d:	e8 94 2b 00 00       	call   0x405ff6
403462:	e8 9d fd ff ff       	call   0x403204
403467:	85 c0                	test   %eax,%eax
403469:	75 36                	jne    0x4034a1
40346b:	56                   	push   %esi
40346c:	68 fc 03 00 00       	push   $0x3fc
403471:	ff d7                	call   *%edi
403473:	68 6c 91 40 00       	push   $0x40916c
403478:	56                   	push   %esi
403479:	e8 78 2b 00 00       	call   0x405ff6
40347e:	8b 3d 88 70 40 00    	mov    0x407088,%edi
403484:	56                   	push   %esi
403485:	68 64 91 40 00       	push   $0x409164
40348a:	ff d7                	call   *%edi
40348c:	56                   	push   %esi
40348d:	68 60 91 40 00       	push   $0x409160
403492:	ff d7                	call   *%edi
403494:	e8 6b fd ff ff       	call   0x403204
403499:	85 c0                	test   %eax,%eax
40349b:	0f 84 ae 00 00 00    	je     0x40354f
4034a1:	68 00 a0 42 00       	push   $0x42a000
4034a6:	ff 15 28 71 40 00    	call   *0x407128
4034ac:	ff 74 24 20          	push   0x20(%esp)
4034b0:	e8 0f f9 ff ff       	call   0x402dc4