4031ab:	59                   	pop    %ecx
4031ac:	c3                   	ret
4031ad:	c3                   	ret
4031ae:	8b 44 24 08          	mov    0x8(%esp),%eax
4031b2:	83 e8 10             	sub    $0x10,%eax
4031b5:	74 1a                	je     0x4031d1
4031b7:	2d 00 01 00 00       	sub    $0x100,%eax
4031bc:	74 1f                	je     0x4031dd
4031be:	48                   	dec    %eax
4031bf:	74 04                	je     0x4031c5
4031c1:	33 c0                	xor    %eax,%eax
4031c3:	eb 1b                	jmp    0x4031e0
4031c5:	66 83 7c 24 0c 02    	cmpw   $0x2,0xc(%esp)
4031cb:	75 10                	jne    0x4031dd
4031cd:	6a 01                	push   $0x1
4031cf:	eb 02                	jmp    0x4031d3
4031d1:	6a 02                	push   $0x2
4031d3:	ff 74 24 08          	push   0x8(%esp)
4031d7:	ff 15 c0 a2 40 00    	call   *0x40a2c0
4031dd:	6a 01                	push   $0x1
4031df:	58                   	pop    %eax
4031e0:	c2 10 00             	ret    $0x10
4031e3:	55                   	push   %ebp
4031e4:	8b ec                	mov    %esp,%ebp
4031e6:	81 ec cc 00 00 00    	sub    $0xcc,%esp
4031ec:	53                   	push   %ebx
4031ed:	56                   	push   %esi
4031ee:	57                   	push   %edi
4031ef:	6a 06                	push   $0x6
4031f1:	59                   	pop    %ecx
4031f2:	be 98 c4 40 00       	mov    $0x40c498,%esi
4031f7:	8d bd 34 ff ff ff    	lea    -0xcc(%ebp),%edi
4031fd:	8d 85 34 ff ff ff    	lea    -0xcc(%ebp),%eax
403203:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
403205:	66 a5                	movsw  %ds:(%esi),%es:(%edi)
403207:	6a 1b                	push   $0x1b
403209:	50                   	push   %eax
40320a:	a4                   	movsb  %ds:(%esi),%es:(%edi)
40320b:	e8 a7 fe ff ff       	call   0x4030b7
403210:	59                   	pop    %ecx
403211:	59                   	pop    %ecx
403212:	68 00 80 00 00       	push   $0x8000
403217:	ff 15 d8 a0 40 00    	call   *0x40a0d8
40321d:	50                   	push   %eax
40321e:	ff 15 08 a1 40 00    	call   *0x40a108
403224:	33 db                	xor    %ebx,%ebx
403226:	53                   	push   %ebx
403227:	68 18 a3 40 00       	push   $0x40a318
40322c:	ff 15 6c a2 40 00    	call   *0x40a26c
403232:	8b f0                	mov    %eax,%esi
403234:	3b f3                	cmp    %ebx,%esi
403236:	74 19                	je     0x403251
403238:	6a 09                	push   $0x9
40323a:	56                   	push   %esi
40323b:	ff 15 e8 a1 40 00    	call   *0x40a1e8
403241:	56                   	push   %esi
403242:	ff 15 e0 a2 40 00    	call   *0x40a2e0
403248:	5f                   	pop    %edi
403249:	5e                   	pop    %esi
40324a:	33 c0                	xor    %eax,%eax
40324c:	5b                   	pop    %ebx
40324d:	c9                   	leave
40324e:	c2 10 00             	ret    $0x10
403251:	ff 15 44 a0 40 00    	call   *0x40a044
403257:	e8 d3 5a 00 00       	call   0x408d2f
40325c:	8d 85 50 ff ff ff    	lea    -0xb0(%ebp),%eax
403262:	c7 85 50 ff ff ff 94 	movl   $0x94,-0xb0(%ebp)
403269:	00 00 00
40326c:	50                   	push   %eax
40326d:	ff 15 4c a0 40 00    	call   *0x40a04c
403273:	8b 95 54 ff ff ff    	mov    -0xac(%ebp),%edx
403279:	8b 8d 58 ff ff ff    	mov    -0xa8(%ebp),%ecx
40327f:	83 fa 04             	cmp    $0x4,%edx
403282:	75 3d                	jne    0x4032c1
403284:	3b cb                	cmp    %ebx,%ecx
403286:	75 21                	jne    0x4032a9
403288:	83 bd 60 ff ff ff 01 	cmpl   $0x1,-0xa0(%ebp)
40328f:	b8 94 c4 40 00       	mov    $0x40c494,%eax
403294:	74 03                	je     0x403299
403296:	8b 45 08             	mov    0x8(%ebp),%eax
403299:	83 bd 60 ff ff ff 02 	cmpl   $0x2,-0xa0(%ebp)
4032a0:	75 73                	jne    0x403315
4032a2:	b8 90 c4 40 00       	mov    $0x40c490,%eax
4032a7:	eb 3e                	jmp    0x4032e7
4032a9:	83 f9 0a             	cmp    $0xa,%ecx
4032ac:	75 07                	jne    0x4032b5
4032ae:	b8 8c c4 40 00       	mov    $0x40c48c,%eax
4032b3:	eb 29                	jmp    0x4032de
4032b5:	83 f9 5a             	cmp    $0x5a,%ecx
4032b8:	75 21                	jne    0x4032db
4032ba:	b8 88 c4 40 00       	mov    $0x40c488,%eax
4032bf:	eb 1d                	jmp    0x4032de
4032c1:	83 fa 05             	cmp    $0x5,%edx
4032c4:	75 15                	jne    0x4032db
4032c6:	3b cb                	cmp    %ebx,%ecx
4032c8:	75 07                	jne    0x4032d1
4032ca:	b8 80 c4 40 00       	mov    $0x40c480,%eax
4032cf:	eb 0d                	jmp    0x4032de
4032d1:	83 f9 01             	cmp    $0x1,%ecx
4032d4:	b8 7c c4 40 00       	mov    $0x40c47c,%eax
4032d9:	74 03                	je     0x4032de
4032db:	8b 45 08             	mov    0x8(%ebp),%eax
4032de:	83 bd 60 ff ff ff 02 	cmpl   $0x2,-0xa0(%ebp)
4032e5:	75 2e                	jne    0x403315
4032e7:	38 9d 64 ff ff ff    	cmp    %bl,-0x9c(%ebp)
4032ed:	74 26                	je     0x403315
4032ef:	ff b5 5c ff ff ff    	push   -0xa4(%ebp)
4032f5:	be f0 d4 40 00       	mov    $0x40d4f0,%esi
4032fa:	51                   	push   %ecx
4032fb:	8d 8d 64 ff ff ff    	lea    -0x9c(%ebp),%ecx
403301:	52                   	push   %edx
403302:	51                   	push   %ecx
403303:	50                   	push   %eax
403304:	68 5c c4 40 00       	push   $0x40c45c
403309:	56                   	push   %esi
40330a:	ff 15 58 a1 40 00    	call   *0x40a158
403310:	83 c4 1c             	add    $0x1c,%esp
403313:	eb 1d                	jmp    0x403332
403315:	ff b5 5c ff ff ff    	push   -0xa4(%ebp)
40331b:	be f0 d4 40 00       	mov    $0x40d4f0,%esi
403320:	51                   	push   %ecx
403321:	52                   	push   %edx
403322:	50                   	push   %eax
403323:	68 40 c4 40 00       	push   $0x40c440
403328:	56                   	push   %esi
403329:	ff 15 58 a1 40 00    	call   *0x40a158
40332f:	83 c4 18             	add    $0x18,%esp
403332:	83 bd 60 ff ff ff 02 	cmpl   $0x2,-0xa0(%ebp)
403339:	74 17                	je     0x403352
40333b:	56                   	push   %esi
40333c:	68 1c c4 40 00       	push   $0x40c41c
403341:	53                   	push   %ebx
403342:	e8 be 52 00 00       	call   0x408605
403347:	83 c4 0c             	add    $0xc,%esp
40334a:	6a ff                	push   $0xffffffff
40334c:	ff 15 94 a0 40 00    	call   *0x40a094
403352:	6a 50                	push   $0x50
403354:	53                   	push   %ebx
403355:	68 c8 d7 40 00       	push   $0x40d7c8
40335a:	e8 dd 5b 00 00       	call   0x408f3c
40335f:	83 c4 0c             	add    $0xc,%esp
403362:	e8 4e 53 00 00       	call   0x4086b5
403367:	ff 75 08             	push   0x8(%ebp)
40336a:	b9 b8 d5 40 00       	mov    $0x40d5b8,%ecx
40336f:	e8 fb 48 00 00       	call   0x407c6f
403374:	8b 35 70 a2 40 00    	mov    0x40a270,%esi
40337a:	53                   	push   %ebx
40337b:	53                   	push   %ebx
40337c:	8d 45 e4             	lea    -0x1c(%ebp),%eax
40337f:	53                   	push   %ebx
403380:	50                   	push   %eax
403381:	ff d6                	call   *%esi
403383:	85 c0                	test   %eax,%eax
403385:	0f 8e bd fe ff ff    	jle    0x403248
40338b:	8d 45 e4             	lea    -0x1c(%ebp),%eax
40338e:	50                   	push   %eax
40338f:	ff 15 74 a2 40 00    	call   *0x40a274
403395:	8d 45 e4             	lea    -0x1c(%ebp),%eax
403398:	50                   	push   %eax
403399:	ff 15 78 a2 40 00    	call   *0x40a278
40339f:	53                   	push   %ebx
4033a0:	53                   	push   %ebx
4033a1:	8d 45 e4             	lea    -0x1c(%ebp),%eax
4033a4:	53                   	push   %ebx
4033a5:	50                   	push   %eax
4033a6:	eb d9                	jmp    0x403381
4033a8:	8b c1                	mov    %ecx,%eax
4033aa:	8b 4c 24 04          	mov    0x4(%esp),%ecx
4033ae:	89 88 5c 02 00 00    	mov    %ecx,0x25c(%eax)
4033b4:	33 c9                	xor    %ecx,%ecx
4033b6:	89 08                	mov    %ecx,(%eax)
4033b8:	89 48 04             	mov    %ecx,0x4(%eax)
4033bb:	89 88 58 02 00 00    	mov    %ecx,0x258(%eax)
4033c1:	c2 04 00             	ret    $0x4
4033c4:	55                   	push   %ebp
4033c5:	8b ec                	mov    %esp,%ebp
4033c7:	81 ec 2c 01 00 00    	sub    $0x12c,%esp
4033cd:	56                   	push   %esi
4033ce:	57                   	push   %edi
4033cf:	8b 3d dc a2 40 00    	mov    0x40a2dc,%edi
4033d5:	6a 01                	push   $0x1
4033d7:	8b f1                	mov    %ecx,%esi
4033d9:	6a ff                	push   $0xffffffff
4033db:	68 0c 10 00 00       	push   $0x100c
4033e0:	ff b6 60 02 00 00    	push   0x260(%esi)
4033e6:	ff d7                	call   *%edi
4033e8:	83 f8 ff             	cmp    $0xffffffff,%eax
4033eb:	74 78                	je     0x403465
4033ed:	0f b7 4d 0c          	movzwl 0xc(%ebp),%ecx
4033f1:	81 e9 78 04 00 00    	sub    $0x478,%ecx
4033f7:	74 27                	je     0x403420
4033f9:	49                   	dec    %ecx
4033fa:	74 12                	je     0x40340e
4033fc:	49                   	dec    %ecx
4033fd:	75 66                	jne    0x403465
4033ff:	6a 00                	push   $0x0
403401:	50                   	push   %eax
403402:	ff 75 08             	push   0x8(%ebp)
403405:	8b ce                	mov    %esi,%ecx
403407:	e8 c2 02 00 00       	call   0x4036ce
40340c:	eb 57                	jmp    0x403465
40340e:	6a 00                	push   $0x0
403410:	50                   	push   %eax
403411:	ff b6 60 02 00 00    	push   0x260(%esi)
403417:	8b ce                	mov    %esi,%ecx
403419:	e8 17 01 00 00       	call   0x403535
40341e:	eb 45                	jmp    0x403465
403420:	89 45 dc             	mov    %eax,-0x24(%ebp)
403423:	8d 85 d4 fe ff ff    	lea    -0x12c(%ebp),%eax
403429:	89 45 ec             	mov    %eax,-0x14(%ebp)
40342c:	8d 45 d8             	lea    -0x28(%ebp),%eax
40342f:	50                   	push   %eax
403430:	6a 00                	push   $0x0
403432:	68 05 10 00 00       	push   $0x1005
403437:	c7 45 d8 01 00 00 00 	movl   $0x1,-0x28(%ebp)
40343e:	ff b6 60 02 00 00    	push   0x260(%esi)
403444:	c7 45 e0 04 00 00 00 	movl   $0x4,-0x20(%ebp)
40344b:	c7 45 f0 04 01 00 00 	movl   $0x104,-0x10(%ebp)
403452:	ff d7                	call   *%edi
403454:	85 c0                	test   %eax,%eax
403456:	74 0d                	je     0x403465
403458:	ff 75 ec             	push   -0x14(%ebp)
40345b:	ff 75 08             	push   0x8(%ebp)
40345e:	e8 7d 58 00 00       	call   0x408ce0
403463:	59                   	pop    %ecx
403464:	59                   	pop    %ecx
403465:	5f                   	pop    %edi
403466:	5e                   	pop    %esi
403467:	c9                   	leave
403468:	c2 0c 00             	ret    $0xc
40346b:	55                   	push   %ebp
40346c:	8b ec                	mov    %esp,%ebp
40346e:	81 ec 34 01 00 00    	sub    $0x134,%esp
403474:	56                   	push   %esi
403475:	8b 75 10             	mov    0x10(%ebp),%esi
403478:	57                   	push   %edi
403479:	8b f9                	mov    %ecx,%edi
40347b:	8b 46 08             	mov    0x8(%esi),%eax
40347e:	83 f8 fb             	cmp    $0xfffffffb,%eax
403481:	75 3f                	jne    0x4034c2
403483:	33 f6                	xor    %esi,%esi
403485:	39 77 04             	cmp    %esi,0x4(%edi)
403488:	75 17                	jne    0x4034a1
40348a:	8b 87 5c 02 00 00    	mov    0x25c(%edi),%eax
403490:	6a 01                	push   $0x1
403492:	ff b0 f8 01 00 00    	push   0x1f8(%eax)
403498:	ff 15 c8 a2 40 00    	call   *0x40a2c8
40349e:	89 47 04             	mov    %eax,0x4(%edi)
4034a1:	8d 45 f8             	lea    -0x8(%ebp),%eax
4034a4:	50                   	push   %eax
4034a5:	ff 15 cc a2 40 00    	call   *0x40a2cc
4034ab:	56                   	push   %esi
4034ac:	ff 75 08             	push   0x8(%ebp)
4034af:	56                   	push   %esi
4034b0:	ff 75 fc             	push   -0x4(%ebp)
4034b3:	ff 75 f8             	push   -0x8(%ebp)
4034b6:	56                   	push   %esi
4034b7:	ff 77 04             	push   0x4(%edi)
4034ba:	ff 15 d0 a2 40 00    	call   *0x40a2d0
4034c0:	eb 6d                	jmp    0x40352f
4034c2:	83 f8 fd             	cmp    $0xfffffffd,%eax
4034c5:	75 68                	jne    0x40352f
4034c7:	8b 3d dc a2 40 00    	mov    0x40a2dc,%edi
4034cd:	6a 01                	push   $0x1
4034cf:	6a ff                	push   $0xffffffff
4034d1:	68 0c 10 00 00       	push   $0x100c
4034d6:	ff 36                	push   (%esi)
4034d8:	ff d7                	call   *%edi
4034da:	83 f8 ff             	cmp    $0xffffffff,%eax
4034dd:	74 50                	je     0x40352f
4034df:	33 c9                	xor    %ecx,%ecx
4034e1:	81 7e 04 e8 03 00 00 	cmpl   $0x3e8,0x4(%esi)
4034e8:	89 45 d4             	mov    %eax,-0x2c(%ebp)
4034eb:	8d 85 cc fe ff ff    	lea    -0x134(%ebp),%eax
4034f1:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4034f4:	8d 45 d0             	lea    -0x30(%ebp),%eax
4034f7:	0f 95 c1             	setne  %cl
4034fa:	49                   	dec    %ecx
4034fb:	50                   	push   %eax
4034fc:	6a 00                	push   $0x0
4034fe:	83 e1 02             	and    $0x2,%ecx
403501:	68 05 10 00 00       	push   $0x1005
403506:	83 c1 04             	add    $0x4,%ecx
403509:	ff 36                	push   (%esi)
40350b:	c7 45 d0 01 00 00 00 	movl   $0x1,-0x30(%ebp)
403512:	89 4d d8             	mov    %ecx,-0x28(%ebp)
403515:	c7 45 e8 04 01 00 00 	movl   $0x104,-0x18(%ebp)
40351c:	ff d7                	call   *%edi
40351e:	85 c0                	test   %eax,%eax
403520:	74 0d                	je     0x40352f
403522:	ff 75 e4             	push   -0x1c(%ebp)
403525:	ff 75 08             	push   0x8(%ebp)
403528:	e8 b3 57 00 00       	call   0x408ce0
40352d:	59                   	pop    %ecx
40352e:	59                   	pop    %ecx
40352f:	5f                   	pop    %edi
403530:	5e                   	pop    %esi
403531:	c9                   	leave
403532:	c2 0c 00             	ret    $0xc
403535:	55                   	push   %ebp
403536:	8b ec                	mov    %esp,%ebp
403538:	81 ec 48 07 00 00    	sub    $0x748,%esp
40353e:	8b 45 0c             	mov    0xc(%ebp),%eax
403541:	53                   	push   %ebx
403542:	89 45 d8             	mov    %eax,-0x28(%ebp)
403545:	8d 85 d0 fe ff ff    	lea    -0x130(%ebp),%eax
40354b:	89 45 e8             	mov    %eax,-0x18(%ebp)
40354e:	56                   	push   %esi
40354f:	8b 35 dc a2 40 00    	mov    0x40a2dc,%esi
403555:	8d 45 d4             	lea    -0x2c(%ebp),%eax
403558:	57                   	push   %edi
403559:	33 db                	xor    %ebx,%ebx
40355b:	50                   	push   %eax
40355c:	bf 05 10 00 00       	mov    $0x1005,%edi
403561:	53                   	push   %ebx
403562:	57                   	push   %edi
403563:	ff 75 08             	push   0x8(%ebp)
403566:	89 4d fc             	mov    %ecx,-0x4(%ebp)
403569:	88 9d b8 f8 ff ff    	mov    %bl,-0x748(%ebp)
40356f:	c7 45 d4 01 00 00 00 	movl   $0x1,-0x2c(%ebp)
403576:	89 5d dc             	mov    %ebx,-0x24(%ebp)
403579:	c7 45 ec 03 01 00 00 	movl   $0x103,-0x14(%ebp)
403580:	ff d6                	call   *%esi
403582:	85 c0                	test   %eax,%eax
403584:	74 15                	je     0x40359b
403586:	8d 85 d0 fe ff ff    	lea    -0x130(%ebp),%eax
40358c:	50                   	push   %eax
40358d:	8d 85 b8 f8 ff ff    	lea    -0x748(%ebp),%eax
403593:	50                   	push   %eax
403594:	e8 af 5a 00 00       	call   0x409048
403599:	59                   	pop    %ecx
40359a:	59                   	pop    %ecx
40359b:	8d 85 d1 fe ff ff    	lea    -0x12f(%ebp),%eax
4035a1:	c7 45 dc 01 00 00 00 	movl   $0x1,-0x24(%ebp)
4035a8:	89 45 e8             	mov    %eax,-0x18(%ebp)
4035ab:	8d 45 d4             	lea    -0x2c(%ebp),%eax
4035ae:	50                   	push   %eax
4035af:	53                   	push   %ebx
4035b0:	57                   	push   %edi
4035b1:	c6 85 d0 fe ff ff 20 	movb   $0x20,-0x130(%ebp)
4035b8:	ff 75 08             	push   0x8(%ebp)
4035bb:	ff d6                	call   *%esi
4035bd:	85 c0                	test   %eax,%eax
4035bf:	74 15                	je     0x4035d6
4035c1:	8d 85 d0 fe ff ff    	lea    -0x130(%ebp),%eax
4035c7:	50                   	push   %eax
4035c8:	8d 85 b8 f8 ff ff    	lea    -0x748(%ebp),%eax
4035ce:	50                   	push   %eax
4035cf:	e8 6e 59 00 00       	call   0x408f42
4035d4:	59                   	pop    %ecx