5c411c:	8b 45 fc             	mov    -0x4(%ebp),%eax
5c411f:	e8 74 96 e6 ff       	call   0x42d798
5c4124:	8b 40 14             	mov    0x14(%eax),%eax
5c4127:	ba 0d 00 00 80       	mov    $0x8000000d,%edx
5c412c:	e8 53 41 e6 ff       	call   0x428284
5c4131:	eb 16                	jmp    0x5c4149
5c4133:	8b 45 fc             	mov    -0x4(%ebp),%eax
5c4136:	e8 5d 96 e6 ff       	call   0x42d798
5c413b:	8b 40 14             	mov    0x14(%eax),%eax
5c413e:	8b 56 30             	mov    0x30(%esi),%edx
5c4141:	8b 52 0c             	mov    0xc(%edx),%edx
5c4144:	e8 3b 41 e6 ff       	call   0x428284
5c4149:	8d 45 a4             	lea    -0x5c(%ebp),%eax
5c414c:	8b 56 30             	mov    0x30(%esi),%edx
5c414f:	8b 52 04             	mov    0x4(%edx),%edx
5c4152:	e8 95 0e e4 ff       	call   0x404fec
5c4157:	8b 46 30             	mov    0x30(%esi),%eax
5c415a:	8a 40 15             	mov    0x15(%eax),%al
5c415d:	2c 01                	sub    $0x1,%al
5c415f:	72 0b                	jb     0x5c416c
5c4161:	0f 84 97 00 00 00    	je     0x5c41fe
5c4167:	e9 10 01 00 00       	jmp    0x5c427c
5c416c:	c7 45 f8 01 00 00 00 	movl   $0x1,-0x8(%ebp)
5c4173:	8b 45 fc             	mov    -0x4(%ebp),%eax
5c4176:	e8 1d 96 e6 ff       	call   0x42d798
5c417b:	50                   	push   %eax
5c417c:	8d 85 20 ff ff ff    	lea    -0xe0(%ebp),%eax
5c4182:	8b 55 a4             	mov    -0x5c(%ebp),%edx
5c4185:	e8 5e 09 e4 ff       	call   0x404ae8
5c418a:	8b 95 20 ff ff ff    	mov    -0xe0(%ebp),%edx
5c4190:	58                   	pop    %eax
5c4191:	e8 66 49 e6 ff       	call   0x428afc
5c4196:	8b f8                	mov    %eax,%edi
5c4198:	3b 7d 90             	cmp    -0x70(%ebp),%edi
5c419b:	0f 8e db 00 00 00    	jle    0x5c427c
5c41a1:	8b 45 a4             	mov    -0x5c(%ebp),%eax
5c41a4:	e8 67 0f e4 ff       	call   0x405110
5c41a9:	83 f8 02             	cmp    $0x2,%eax
5c41ac:	0f 8c ca 00 00 00    	jl     0x5c427c
5c41b2:	ff 45 f8             	incl   -0x8(%ebp)
5c41b5:	8d 45 a0             	lea    -0x60(%ebp),%eax
5c41b8:	50                   	push   %eax
5c41b9:	8b 46 30             	mov    0x30(%esi),%eax
5c41bc:	8b 40 04             	mov    0x4(%eax),%eax
5c41bf:	e8 4c 0f e4 ff       	call   0x405110
5c41c4:	8b c8                	mov    %eax,%ecx
5c41c6:	2b 4d f8             	sub    -0x8(%ebp),%ecx
5c41c9:	8b 46 30             	mov    0x30(%esi),%eax
5c41cc:	8b 40 04             	mov    0x4(%eax),%eax
5c41cf:	ba 01 00 00 00       	mov    $0x1,%edx
5c41d4:	e8 d3 10 e4 ff       	call   0x4052ac
5c41d9:	8b 45 a0             	mov    -0x60(%ebp),%eax
5c41dc:	33 d2                	xor    %edx,%edx
5c41de:	e8 45 10 e4 ff       	call   0x405228
5c41e3:	0f 84 93 00 00 00    	je     0x5c427c
5c41e9:	8d 45 a4             	lea    -0x5c(%ebp),%eax
5c41ec:	b9 68 46 5c 00       	mov    $0x5c4668,%ecx
5c41f1:	8b 55 a0             	mov    -0x60(%ebp),%edx
5c41f4:	e8 83 0f e4 ff       	call   0x40517c
5c41f9:	e9 75 ff ff ff       	jmp    0x5c4173
5c41fe:	c7 45 f8 01 00 00 00 	movl   $0x1,-0x8(%ebp)
5c4205:	8b 45 fc             	mov    -0x4(%ebp),%eax
5c4208:	e8 8b 95 e6 ff       	call   0x42d798
5c420d:	50                   	push   %eax
5c420e:	8d 85 1c ff ff ff    	lea    -0xe4(%ebp),%eax
5c4214:	8b 55 a4             	mov    -0x5c(%ebp),%edx
5c4217:	e8 cc 08 e4 ff       	call   0x404ae8
5c421c:	8b 95 1c ff ff ff    	mov    -0xe4(%ebp),%edx
5c4222:	58                   	pop    %eax
5c4223:	e8 d4 48 e6 ff       	call   0x428afc
5c4228:	8b f8                	mov    %eax,%edi
5c422a:	3b 7d 90             	cmp    -0x70(%ebp),%edi
5c422d:	7e 4d                	jle    0x5c427c
5c422f:	8b 45 a4             	mov    -0x5c(%ebp),%eax
5c4232:	e8 d9 0e e4 ff       	call   0x405110
5c4237:	83 f8 02             	cmp    $0x2,%eax
5c423a:	7c 40                	jl     0x5c427c
5c423c:	ff 45 f8             	incl   -0x8(%ebp)
5c423f:	8d 45 a0             	lea    -0x60(%ebp),%eax
5c4242:	50                   	push   %eax
5c4243:	8b 46 30             	mov    0x30(%esi),%eax
5c4246:	8b 40 04             	mov    0x4(%eax),%eax
5c4249:	e8 c2 0e e4 ff       	call   0x405110
5c424e:	8b c8                	mov    %eax,%ecx
5c4250:	8b 46 30             	mov    0x30(%esi),%eax
5c4253:	8b 40 04             	mov    0x4(%eax),%eax
5c4256:	8b 55 f8             	mov    -0x8(%ebp),%edx
5c4259:	e8 4e 10 e4 ff       	call   0x4052ac
5c425e:	8b 45 a0             	mov    -0x60(%ebp),%eax
5c4261:	33 d2                	xor    %edx,%edx
5c4263:	e8 c0 0f e4 ff       	call   0x405228
5c4268:	74 12                	je     0x5c427c
5c426a:	8d 45 a4             	lea    -0x5c(%ebp),%eax
5c426d:	8b 4d a0             	mov    -0x60(%ebp),%ecx
5c4270:	ba 68 46 5c 00       	mov    $0x5c4668,%edx
5c4275:	e8 02 0f e4 ff       	call   0x40517c
5c427a:	eb 89                	jmp    0x5c4205
5c427c:	8b 45 fc             	mov    -0x4(%ebp),%eax
5c427f:	e8 14 95 e6 ff       	call   0x42d798
5c4284:	50                   	push   %eax
5c4285:	8d 85 18 ff ff ff    	lea    -0xe8(%ebp),%eax
5c428b:	8b 55 a4             	mov    -0x5c(%ebp),%edx
5c428e:	e8 55 08 e4 ff       	call   0x404ae8
5c4293:	8b 95 18 ff ff ff    	mov    -0xe8(%ebp),%edx
5c4299:	58                   	pop    %eax
5c429a:	e8 79 48 e6 ff       	call   0x428b18
5c429f:	89 45 c4             	mov    %eax,-0x3c(%ebp)
5c42a2:	8b 45 e0             	mov    -0x20(%ebp),%eax
5c42a5:	03 45 8c             	add    -0x74(%ebp),%eax
5c42a8:	50                   	push   %eax
5c42a9:	8d 85 40 ff ff ff    	lea    -0xc0(%ebp),%eax
5c42af:	50                   	push   %eax
5c42b0:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
5c42b3:	03 4d 90             	add    -0x70(%ebp),%ecx
5c42b6:	8b 55 e0             	mov    -0x20(%ebp),%edx
5c42b9:	03 55 8c             	add    -0x74(%ebp),%edx
5c42bc:	2b 55 c4             	sub    -0x3c(%ebp),%edx
5c42bf:	4a                   	dec    %edx
5c42c0:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5c42c3:	e8 ac 63 e5 ff       	call   0x41a674
5c42c8:	8d 85 40 ff ff ff    	lea    -0xc0(%ebp),%eax
5c42ce:	50                   	push   %eax
5c42cf:	8b 45 fc             	mov    -0x4(%ebp),%eax
5c42d2:	e8 c1 94 e6 ff       	call   0x42d798
5c42d7:	5a                   	pop    %edx
5c42d8:	e8 1f 44 e6 ff       	call   0x4286fc
5c42dd:	8b 45 fc             	mov    -0x4(%ebp),%eax
5c42e0:	e8 b3 94 e6 ff       	call   0x42d798
5c42e5:	50                   	push   %eax
5c42e6:	8d 85 14 ff ff ff    	lea    -0xec(%ebp),%eax
5c42ec:	8b 55 a4             	mov    -0x5c(%ebp),%edx
5c42ef:	e8 f4 07 e4 ff       	call   0x404ae8
5c42f4:	8b 95 14 ff ff ff    	mov    -0xec(%ebp),%edx
5c42fa:	58                   	pop    %eax
5c42fb:	e8 fc 47 e6 ff       	call   0x428afc
5c4300:	8b f8                	mov    %eax,%edi
5c4302:	8b 45 a4             	mov    -0x5c(%ebp),%eax
5c4305:	e8 06 0e e4 ff       	call   0x405110
5c430a:	50                   	push   %eax
5c430b:	8b 45 a4             	mov    -0x5c(%ebp),%eax
5c430e:	e8 ed 0d e4 ff       	call   0x405100
5c4313:	50                   	push   %eax
5c4314:	8b 45 e0             	mov    -0x20(%ebp),%eax
5c4317:	03 45 8c             	add    -0x74(%ebp),%eax
5c431a:	2b 45 c4             	sub    -0x3c(%ebp),%eax
5c431d:	48                   	dec    %eax
5c431e:	50                   	push   %eax
5c431f:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5c4322:	40                   	inc    %eax
5c4323:	8b 55 90             	mov    -0x70(%ebp),%edx
5c4326:	2b d7                	sub    %edi,%edx
5c4328:	83 ea 02             	sub    $0x2,%edx
5c432b:	d1 fa                	sar    $1,%edx
5c432d:	79 03                	jns    0x5c4332
5c432f:	83 d2 00             	adc    $0x0,%edx
5c4332:	03 c2                	add    %edx,%eax
5c4334:	50                   	push   %eax
5c4335:	8b 45 fc             	mov    -0x4(%ebp),%eax
5c4338:	e8 5b 94 e6 ff       	call   0x42d798
5c433d:	e8 7e 49 e6 ff       	call   0x428cc0
5c4342:	50                   	push   %eax
5c4343:	e8 90 34 e4 ff       	call   0x4077d8
5c4348:	83 45 c4 03          	addl   $0x3,-0x3c(%ebp)
5c434c:	80 bb 0b 03 00 00 01 	cmpb   $0x1,0x30b(%ebx)
5c4353:	0f 85 cb 00 00 00    	jne    0x5c4424
5c4359:	8b 45 dc             	mov    -0x24(%ebp),%eax
5c435c:	03 45 f4             	add    -0xc(%ebp),%eax
5c435f:	48                   	dec    %eax
5c4360:	50                   	push   %eax
5c4361:	8b 45 d8             	mov    -0x28(%ebp),%eax
5c4364:	03 45 f0             	add    -0x10(%ebp),%eax
5c4367:	48                   	dec    %eax
5c4368:	50                   	push   %eax
5c4369:	68 80 80 80 00       	push   $0x808080
5c436e:	68 ff ff ff 00       	push   $0xffffff
5c4373:	8b 45 fc             	mov    -0x4(%ebp),%eax
5c4376:	e8 1d 94 e6 ff       	call   0x42d798
5c437b:	8b 4d d8             	mov    -0x28(%ebp),%ecx
5c437e:	8b 55 dc             	mov    -0x24(%ebp),%edx
5c4381:	e8 96 31 03 00       	call   0x5f751c
5c4386:	8b 45 94             	mov    -0x6c(%ebp),%eax
5c4389:	03 45 98             	add    -0x68(%ebp),%eax
5c438c:	85 c0                	test   %eax,%eax
5c438e:	7f 18                	jg     0x5c43a8
5c4390:	80 bb e4 03 00 00 00 	cmpb   $0x0,0x3e4(%ebx)
5c4397:	74 3c                	je     0x5c43d5
5c4399:	8b 46 34             	mov    0x34(%esi),%eax
5c439c:	8b 40 04             	mov    0x4(%eax),%eax
5c439f:	33 d2                	xor    %edx,%edx
5c43a1:	e8 82 0e e4 ff       	call   0x405228
5c43a6:	74 2d                	je     0x5c43d5
5c43a8:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5c43ab:	03 45 90             	add    -0x70(%ebp),%eax
5c43ae:	48                   	dec    %eax
5c43af:	50                   	push   %eax
5c43b0:	8b 45 e0             	mov    -0x20(%ebp),%eax
5c43b3:	03 45 8c             	add    -0x74(%ebp),%eax
5c43b6:	48                   	dec    %eax
5c43b7:	2b 45 c4             	sub    -0x3c(%ebp),%eax
5c43ba:	50                   	push   %eax
5c43bb:	68 ff ff ff 00       	push   $0xffffff
5c43c0:	6a 00                	push   $0x0
5c43c2:	8b 45 fc             	mov    -0x4(%ebp),%eax
5c43c5:	e8 ce 93 e6 ff       	call   0x42d798
5c43ca:	8b 4d e0             	mov    -0x20(%ebp),%ecx
5c43cd:	8b 55 e4             	mov    -0x1c(%ebp),%edx
5c43d0:	e8 47 31 03 00       	call   0x5f751c
5c43d5:	80 bb e4 03 00 00 00 	cmpb   $0x0,0x3e4(%ebx)
5c43dc:	74 46                	je     0x5c4424
5c43de:	8b 46 30             	mov    0x30(%esi),%eax
5c43e1:	8b 40 04             	mov    0x4(%eax),%eax
5c43e4:	33 d2                	xor    %edx,%edx
5c43e6:	e8 3d 0e e4 ff       	call   0x405228
5c43eb:	74 37                	je     0x5c4424
5c43ed:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5c43f0:	03 45 90             	add    -0x70(%ebp),%eax
5c43f3:	48                   	dec    %eax
5c43f4:	50                   	push   %eax
5c43f5:	8b 45 e0             	mov    -0x20(%ebp),%eax
5c43f8:	03 45 8c             	add    -0x74(%ebp),%eax
5c43fb:	48                   	dec    %eax
5c43fc:	50                   	push   %eax
5c43fd:	68 80 80 80 00       	push   $0x808080
5c4402:	68 ff ff ff 00       	push   $0xffffff
5c4407:	8b 45 fc             	mov    -0x4(%ebp),%eax
5c440a:	e8 89 93 e6 ff       	call   0x42d798
5c440f:	8b 4d e0             	mov    -0x20(%ebp),%ecx
5c4412:	03 4d 8c             	add    -0x74(%ebp),%ecx
5c4415:	2b 4d c4             	sub    -0x3c(%ebp),%ecx
5c4418:	49                   	dec    %ecx
5c4419:	83 c1 03             	add    $0x3,%ecx
5c441c:	8b 55 e4             	mov    -0x1c(%ebp),%edx
5c441f:	e8 f8 30 03 00       	call   0x5f751c
5c4424:	66 83 bb c2 02 00 00 	cmpw   $0x0,0x2c2(%ebx)
5c442b:	00
5c442c:	74 22                	je     0x5c4450
5c442e:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5c4431:	50                   	push   %eax
5c4432:	8b 45 e0             	mov    -0x20(%ebp),%eax
5c4435:	50                   	push   %eax
5c4436:	8b 45 fc             	mov    -0x4(%ebp),%eax
5c4439:	e8 5a 93 e6 ff       	call   0x42d798
5c443e:	50                   	push   %eax
5c443f:	8b 4d 08             	mov    0x8(%ebp),%ecx
5c4442:	8b d3                	mov    %ebx,%edx
5c4444:	8b 83 c4 02 00 00    	mov    0x2c4(%ebx),%eax
5c444a:	ff 93 c0 02 00 00    	call   *0x2c0(%ebx)
5c4450:	8b 45 fc             	mov    -0x4(%ebp),%eax
5c4453:	e8 40 93 e6 ff       	call   0x42d798
5c4458:	8b 40 10             	mov    0x10(%eax),%eax
5c445b:	ba 01 00 00 00       	mov    $0x1,%edx
5c4460:	e8 4b 3c e6 ff       	call   0x4280b0
5c4465:	8b 45 fc             	mov    -0x4(%ebp),%eax
5c4468:	e8 2b 93 e6 ff       	call   0x42d798
5c446d:	8b 40 10             	mov    0x10(%eax),%eax
5c4470:	8b 93 18 03 00 00    	mov    0x318(%ebx),%edx
5c4476:	e8 09 3b e6 ff       	call   0x427f84
5c447b:	8b 45 fc             	mov    -0x4(%ebp),%eax
5c447e:	e8 15 93 e6 ff       	call   0x42d798
5c4483:	8b 40 14             	mov    0x14(%eax),%eax
5c4486:	b2 01                	mov    $0x1,%dl
5c4488:	e8 13 3f e6 ff       	call   0x4283a0
5c448d:	8b b3 14 03 00 00    	mov    0x314(%ebx),%esi
5c4493:	83 bb 28 03 00 00 00 	cmpl   $0x0,0x328(%ebx)
5c449a:	74 57                	je     0x5c44f3
5c449c:	8b 55 8c             	mov    -0x74(%ebp),%edx
5c449f:	8b 45 90             	mov    -0x70(%ebp),%eax
5c44a2:	e8 75 4f fe ff       	call   0x5a941c
5c44a7:	99                   	cltd
5c44a8:	f7 bb 28 03 00 00    	idivl  0x328(%ebx)
5c44ae:	89 45 e8             	mov    %eax,-0x18(%ebp)
5c44b1:	8b fe                	mov    %esi,%edi
5c44b3:	85 ff                	test   %edi,%edi
5c44b5:	7e 74                	jle    0x5c452b
5c44b7:	be 01 00 00 00       	mov    $0x1,%esi
5c44bc:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5c44bf:	03 45 90             	add    -0x70(%ebp),%eax
5c44c2:	03 c6                	add    %esi,%eax
5c44c4:	50                   	push   %eax
5c44c5:	8b 45 e0             	mov    -0x20(%ebp),%eax
5c44c8:	03 45 8c             	add    -0x74(%ebp),%eax
5c44cb:	03 c6                	add    %esi,%eax
5c44cd:	50                   	push   %eax
5c44ce:	8b 45 e8             	mov    -0x18(%ebp),%eax
5c44d1:	50                   	push   %eax
5c44d2:	8b 45 e8             	mov    -0x18(%ebp),%eax
5c44d5:	50                   	push   %eax
5c44d6:	8b 45 fc             	mov    -0x4(%ebp),%eax
5c44d9:	e8 ba 92 e6 ff       	call   0x42d798
5c44de:	8b 4d e0             	mov    -0x20(%ebp),%ecx
5c44e1:	2b ce                	sub    %esi,%ecx
5c44e3:	8b 55 e4             	mov    -0x1c(%ebp),%edx
5c44e6:	2b d6                	sub    %esi,%edx
5c44e8:	e8 e7 43 e6 ff       	call   0x4288d4
5c44ed:	46                   	inc    %esi
5c44ee:	4f                   	dec    %edi
5c44ef:	75 cb                	jne    0x5c44bc
5c44f1:	eb 38                	jmp    0x5c452b
5c44f3:	8b fe                	mov    %esi,%edi
5c44f5:	85 ff                	test   %edi,%edi
5c44f7:	7e 32                	jle    0x5c452b
5c44f9:	be 01 00 00 00       	mov    $0x1,%esi
5c44fe:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5c4501:	03 45 90             	add    -0x70(%ebp),%eax
5c4504:	03 c6                	add    %esi,%eax
5c4506:	50                   	push   %eax
5c4507:	8b 45 e0             	mov    -0x20(%ebp),%eax
5c450a:	03 45 8c             	add    -0x74(%ebp),%eax
5c450d:	03 c6                	add    %esi,%eax
5c450f:	50                   	push   %eax
5c4510:	8b 45 fc             	mov    -0x4(%ebp),%eax
5c4513:	e8 80 92 e6 ff       	call   0x42d798
5c4518:	8b 4d e0             	mov    -0x20(%ebp),%ecx
5c451b:	2b ce                	sub    %esi,%ecx
5c451d:	8b 55 e4             	mov    -0x1c(%ebp),%edx
5c4520:	2b d6                	sub    %esi,%edx
5c4522:	e8 49 43 e6 ff       	call   0x428870
5c4527:	46                   	inc    %esi
5c4528:	4f                   	dec    %edi
5c4529:	75 d3                	jne    0x5c44fe
5c452b:	80 7d c3 00          	cmpb   $0x0,-0x3d(%ebp)
5c452f:	0f 84 c2 00 00 00    	je     0x5c45f7
5c4535:	80 bb 0c 03 00 00 01 	cmpb   $0x1,0x30c(%ebx)
5c453c:	0f 84 b5 00 00 00    	je     0x5c45f7
5c4542:	66 83 bb ca 03 00 00 	cmpw   $0x0,0x3ca(%ebx)
5c4549:	00
5c454a:	0f 85 a7 00 00 00    	jne    0x5c45f7
5c4550:	83 bb f4 03 00 00 00 	cmpl   $0x0,0x3f4(%ebx)
5c4557:	74 0d                	je     0x5c4566
5c4559:	83 bb f8 03 00 00 00 	cmpl   $0x0,0x3f8(%ebx)
5c4560:	0f 85 91 00 00 00    	jne    0x5c45f7
5c4566:	8b 45 fc             	mov    -0x4(%ebp),%eax
5c4569:	e8 2a 92 e6 ff       	call   0x42d798
5c456e:	8b 40 10             	mov    0x10(%eax),%eax
5c4571:	ba 01 00 00 00       	mov    $0x1,%edx
5c4576:	e8 35 3b e6 ff       	call   0x4280b0
5c457b:	8b 45 fc             	mov    -0x4(%ebp),%eax
5c457e:	e8 15 92 e6 ff       	call   0x42d798
5c4583:	8b 40 10             	mov    0x10(%eax),%eax
5c4586:	8b 93 60 03 00 00    	mov    0x360(%ebx),%edx
5c458c:	e8 f3 39 e6 ff       	call   0x427f84
5c4591:	8b 45 fc             	mov    -0x4(%ebp),%eax
5c4594:	e8 ff 91 e6 ff       	call   0x42d798
5c4599:	8b 40 14             	mov    0x14(%eax),%eax
5c459c:	b2 01                	mov    $0x1,%dl
5c459e:	e8 fd 3d e6 ff       	call   0x4283a0
5c45a3:	8b c3                	mov    %ebx,%eax
5c45a5:	66 be b5 ff          	mov    $0xffb5,%si
5c45a9:	e8 c6 f6 e3 ff       	call   0x403c74
5c45ae:	84 c0                	test   %al,%al