4c42de:	8b 45 f0             	mov    -0x10(%ebp),%eax
4c42e1:	83 f8 01             	cmp    $0x1,%eax
4c42e4:	0f 85 49 01 00 00    	jne    0x4c4433
4c42ea:	8b 45 f4             	mov    -0xc(%ebp),%eax
4c42ed:	a8 01                	test   $0x1,%al
4c42ef:	0f 95 45 ef          	setne  -0x11(%ebp)
4c42f3:	a8 02                	test   $0x2,%al
4c42f5:	0f 95 45 ff          	setne  -0x1(%ebp)
4c42f9:	a8 04                	test   $0x4,%al
4c42fb:	0f 95 c3             	setne  %bl
4c42fe:	80 7d ef 00          	cmpb   $0x0,-0x11(%ebp)
4c4302:	0f 85 fa 00 00 00    	jne    0x4c4402
4c4308:	8a 45 ff             	mov    -0x1(%ebp),%al
4c430b:	0a c3                	or     %bl,%al
4c430d:	0f 84 9b 00 00 00    	je     0x4c43ae
4c4313:	84 db                	test   %bl,%bl
4c4315:	74 4e                	je     0x4c4365
4c4317:	68 c0 c0 c0 00       	push   $0xc0c0c0
4c431c:	6a 01                	push   $0x1
4c431e:	8d 55 d7             	lea    -0x29(%ebp),%edx
4c4321:	b9 ff ff ff 00       	mov    $0xffffff,%ecx
4c4326:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c4329:	e8 72 f2 ff ff       	call   0x4c35a0
4c432e:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c4331:	8b 40 10             	mov    0x10(%eax),%eax
4c4334:	ba 80 80 80 00       	mov    $0x808080,%edx
4c4339:	e8 46 3c f6 ff       	call   0x427f84
4c433e:	8b 45 d7             	mov    -0x29(%ebp),%eax
4c4341:	48                   	dec    %eax
4c4342:	50                   	push   %eax
4c4343:	8b 45 e3             	mov    -0x1d(%ebp),%eax
4c4346:	50                   	push   %eax
4c4347:	68 80 80 80 00       	push   $0x808080
4c434c:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c434f:	e8 6c 49 f6 ff       	call   0x428cc0
4c4354:	8b 55 d7             	mov    -0x29(%ebp),%edx
4c4357:	4a                   	dec    %edx
4c4358:	8b 4d db             	mov    -0x25(%ebp),%ecx
4c435b:	e8 30 4b fc ff       	call   0x488e90
4c4360:	e9 91 00 00 00       	jmp    0x4c43f6
4c4365:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c4368:	e8 53 49 f6 ff       	call   0x428cc0
4c436d:	8d 55 d7             	lea    -0x29(%ebp),%edx
4c4370:	b9 f0 f0 f4 00       	mov    $0xf4f0f0,%ecx
4c4375:	e8 6a 4a fc ff       	call   0x488de4
4c437a:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c437d:	8b 40 10             	mov    0x10(%eax),%eax
4c4380:	ba 80 80 80 00       	mov    $0x808080,%edx
4c4385:	e8 fa 3b f6 ff       	call   0x427f84
4c438a:	8b 45 d7             	mov    -0x29(%ebp),%eax
4c438d:	48                   	dec    %eax
4c438e:	50                   	push   %eax
4c438f:	8b 45 e3             	mov    -0x1d(%ebp),%eax
4c4392:	50                   	push   %eax
4c4393:	68 80 80 80 00       	push   $0x808080
4c4398:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c439b:	e8 20 49 f6 ff       	call   0x428cc0
4c43a0:	8b 55 d7             	mov    -0x29(%ebp),%edx
4c43a3:	4a                   	dec    %edx
4c43a4:	8b 4d db             	mov    -0x25(%ebp),%ecx
4c43a7:	e8 e4 4a fc ff       	call   0x488e90
4c43ac:	eb 48                	jmp    0x4c43f6
4c43ae:	8b 45 d7             	mov    -0x29(%ebp),%eax
4c43b1:	48                   	dec    %eax
4c43b2:	50                   	push   %eax
4c43b3:	8b 45 e3             	mov    -0x1d(%ebp),%eax
4c43b6:	48                   	dec    %eax
4c43b7:	50                   	push   %eax
4c43b8:	68 d0 d0 d0 00       	push   $0xd0d0d0
4c43bd:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c43c0:	e8 fb 48 f6 ff       	call   0x428cc0
4c43c5:	8b 4d db             	mov    -0x25(%ebp),%ecx
4c43c8:	41                   	inc    %ecx
4c43c9:	8b 55 d7             	mov    -0x29(%ebp),%edx
4c43cc:	4a                   	dec    %edx
4c43cd:	e8 be 4a fc ff       	call   0x488e90
4c43d2:	8b 45 d7             	mov    -0x29(%ebp),%eax
4c43d5:	48                   	dec    %eax
4c43d6:	50                   	push   %eax
4c43d7:	8b 45 e3             	mov    -0x1d(%ebp),%eax
4c43da:	48                   	dec    %eax
4c43db:	50                   	push   %eax
4c43dc:	68 ff ff ff 00       	push   $0xffffff
4c43e1:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c43e4:	e8 d7 48 f6 ff       	call   0x428cc0
4c43e9:	8b 4d db             	mov    -0x25(%ebp),%ecx
4c43ec:	41                   	inc    %ecx
4c43ed:	8b 55 d7             	mov    -0x29(%ebp),%edx
4c43f0:	4a                   	dec    %edx
4c43f1:	e8 9a 4a fc ff       	call   0x488e90
4c43f6:	55                   	push   %ebp
4c43f7:	8b d3                	mov    %ebx,%edx
4c43f9:	8d 45 d7             	lea    -0x29(%ebp),%eax
4c43fc:	e8 0f fe ff ff       	call   0x4c4210
4c4401:	59                   	pop    %ecx
4c4402:	80 7d ef 00          	cmpb   $0x0,-0x11(%ebp)
4c4406:	74 18                	je     0x4c4420
4c4408:	6a 01                	push   $0x1
4c440a:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c440d:	e8 ae 48 f6 ff       	call   0x428cc0
4c4412:	8b 8f 94 00 00 00    	mov    0x94(%edi),%ecx
4c4418:	8d 55 d7             	lea    -0x29(%ebp),%edx
4c441b:	e8 0c 4a fc ff       	call   0x488e2c
4c4420:	56                   	push   %esi
4c4421:	8d 4d d7             	lea    -0x29(%ebp),%ecx
4c4424:	8b 55 f8             	mov    -0x8(%ebp),%edx
4c4427:	8b c7                	mov    %edi,%eax
4c4429:	8b 18                	mov    (%eax),%ebx
4c442b:	ff 53 4c             	call   *0x4c(%ebx)
4c442e:	e9 a0 03 00 00       	jmp    0x4c47d3
4c4433:	83 f8 02             	cmp    $0x2,%eax
4c4436:	0f 85 97 03 00 00    	jne    0x4c47d3
4c443c:	8b 45 f4             	mov    -0xc(%ebp),%eax
4c443f:	a8 01                	test   $0x1,%al
4c4441:	0f 95 45 ef          	setne  -0x11(%ebp)
4c4445:	a8 02                	test   $0x2,%al
4c4447:	0f 95 45 ff          	setne  -0x1(%ebp)
4c444b:	56                   	push   %esi
4c444c:	57                   	push   %edi
4c444d:	8d 75 d7             	lea    -0x29(%ebp),%esi
4c4450:	8d 7d c7             	lea    -0x39(%ebp),%edi
4c4453:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c4454:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c4455:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c4456:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c4457:	5f                   	pop    %edi
4c4458:	5e                   	pop    %esi
4c4459:	8b 55 db             	mov    -0x25(%ebp),%edx
4c445c:	03 55 e3             	add    -0x1d(%ebp),%edx
4c445f:	42                   	inc    %edx
4c4460:	d1 fa                	sar    $1,%edx
4c4462:	79 03                	jns    0x4c4467
4c4464:	83 d2 00             	adc    $0x0,%edx
4c4467:	89 55 d3             	mov    %edx,-0x2d(%ebp)
4c446a:	a8 04                	test   $0x4,%al
4c446c:	0f 95 c3             	setne  %bl
4c446f:	8a 46 09             	mov    0x9(%esi),%al
4c4472:	88 45 e7             	mov    %al,-0x19(%ebp)
4c4475:	88 5e 09             	mov    %bl,0x9(%esi)
4c4478:	80 7d ef 00          	cmpb   $0x0,-0x11(%ebp)
4c447c:	0f 85 c3 00 00 00    	jne    0x4c4545
4c4482:	8a 45 ff             	mov    -0x1(%ebp),%al
4c4485:	0a c3                	or     %bl,%al
4c4487:	75 06                	jne    0x4c448f
4c4489:	80 7d fe 00          	cmpb   $0x0,-0x2(%ebp)
4c448d:	74 67                	je     0x4c44f6
4c448f:	84 db                	test   %bl,%bl
4c4491:	74 19                	je     0x4c44ac
4c4493:	68 c0 c0 c0 00       	push   $0xc0c0c0
4c4498:	6a 01                	push   $0x1
4c449a:	8d 55 c7             	lea    -0x39(%ebp),%edx
4c449d:	b9 ff ff ff 00       	mov    $0xffffff,%ecx
4c44a2:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c44a5:	e8 f6 f0 ff ff       	call   0x4c35a0
4c44aa:	eb 2b                	jmp    0x4c44d7
4c44ac:	80 7d ff 00          	cmpb   $0x0,-0x1(%ebp)
4c44b0:	74 25                	je     0x4c44d7
4c44b2:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c44b5:	e8 06 48 f6 ff       	call   0x428cc0
4c44ba:	8d 55 c7             	lea    -0x39(%ebp),%edx
4c44bd:	b9 f0 f0 f4 00       	mov    $0xf4f0f0,%ecx
4c44c2:	e8 1d 49 fc ff       	call   0x488de4
4c44c7:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c44ca:	8b 40 10             	mov    0x10(%eax),%eax
4c44cd:	ba 80 80 80 00       	mov    $0x808080,%edx
4c44d2:	e8 ad 3a f6 ff       	call   0x427f84
4c44d7:	8b 4d cb             	mov    -0x35(%ebp),%ecx
4c44da:	8b 5d c7             	mov    -0x39(%ebp),%ebx
4c44dd:	8b d3                	mov    %ebx,%edx
4c44df:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c44e2:	e8 ed 42 f6 ff       	call   0x4287d4
4c44e7:	8b 4d d3             	mov    -0x2d(%ebp),%ecx
4c44ea:	8b d3                	mov    %ebx,%edx
4c44ec:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c44ef:	e8 80 42 f6 ff       	call   0x428774
4c44f4:	eb 3e                	jmp    0x4c4534
4c44f6:	8b 06                	mov    (%esi),%eax
4c44f8:	25 00 10 00 00       	and    $0x1000,%eax
4c44fd:	3d 00 10 00 00       	cmp    $0x1000,%eax
4c4502:	75 30                	jne    0x4c4534
4c4504:	80 7d fe 00          	cmpb   $0x0,-0x2(%ebp)
4c4508:	75 12                	jne    0x4c451c
4c450a:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c450d:	8b 40 10             	mov    0x10(%eax),%eax
4c4510:	ba ff ff ff 00       	mov    $0xffffff,%edx
4c4515:	e8 6a 3a f6 ff       	call   0x427f84
4c451a:	eb 18                	jmp    0x4c4534
4c451c:	8b d6                	mov    %esi,%edx
4c451e:	b1 02                	mov    $0x2,%cl
4c4520:	8b c7                	mov    %edi,%eax
4c4522:	e8 91 ee ff ff       	call   0x4c33b8
4c4527:	8b d0                	mov    %eax,%edx
4c4529:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c452c:	8b 40 10             	mov    0x10(%eax),%eax
4c452f:	e8 50 3a f6 ff       	call   0x427f84
4c4534:	55                   	push   %ebp
4c4535:	f6 45 f4 04          	testb  $0x4,-0xc(%ebp)
4c4539:	0f 95 c2             	setne  %dl
4c453c:	8d 45 c7             	lea    -0x39(%ebp),%eax
4c453f:	e8 cc fc ff ff       	call   0x4c4210
4c4544:	59                   	pop    %ecx
4c4545:	8b 5d c7             	mov    -0x39(%ebp),%ebx
4c4548:	03 5d cf             	add    -0x31(%ebp),%ebx
4c454b:	d1 fb                	sar    $1,%ebx
4c454d:	79 03                	jns    0x4c4552
4c454f:	83 d3 00             	adc    $0x0,%ebx
4c4552:	8b 45 cb             	mov    -0x35(%ebp),%eax
4c4555:	03 45 d3             	add    -0x2d(%ebp),%eax
4c4558:	48                   	dec    %eax
4c4559:	d1 f8                	sar    $1,%eax
4c455b:	79 03                	jns    0x4c4560
4c455d:	83 d0 00             	adc    $0x0,%eax
4c4560:	89 45 e8             	mov    %eax,-0x18(%ebp)
4c4563:	8b d6                	mov    %esi,%edx
4c4565:	b1 01                	mov    $0x1,%cl
4c4567:	8b c7                	mov    %edi,%eax
4c4569:	e8 1a ef ff ff       	call   0x4c3488
4c456e:	8b d0                	mov    %eax,%edx
4c4570:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c4573:	8b 40 10             	mov    0x10(%eax),%eax
4c4576:	e8 09 3a f6 ff       	call   0x427f84
4c457b:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c457e:	8b 40 10             	mov    0x10(%eax),%eax
4c4581:	e8 f6 39 f6 ff       	call   0x427f7c
4c4586:	8b d0                	mov    %eax,%edx
4c4588:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c458b:	8b 40 14             	mov    0x14(%eax),%eax
4c458e:	e8 f1 3c f6 ff       	call   0x428284
4c4593:	8d 4d a4             	lea    -0x5c(%ebp),%ecx
4c4596:	8b 55 e8             	mov    -0x18(%ebp),%edx
4c4599:	42                   	inc    %edx
4c459a:	8b c3                	mov    %ebx,%eax
4c459c:	83 e8 02             	sub    $0x2,%eax
4c459f:	e8 a8 60 f5 ff       	call   0x41a64c
4c45a4:	8b 45 a4             	mov    -0x5c(%ebp),%eax
4c45a7:	89 45 ac             	mov    %eax,-0x54(%ebp)
4c45aa:	8b 45 a8             	mov    -0x58(%ebp),%eax
4c45ad:	89 45 b0             	mov    %eax,-0x50(%ebp)
4c45b0:	8d 4d 9c             	lea    -0x64(%ebp),%ecx
4c45b3:	8b 55 e8             	mov    -0x18(%ebp),%edx
4c45b6:	42                   	inc    %edx
4c45b7:	8d 43 02             	lea    0x2(%ebx),%eax
4c45ba:	e8 8d 60 f5 ff       	call   0x41a64c
4c45bf:	8b 45 9c             	mov    -0x64(%ebp),%eax
4c45c2:	89 45 b4             	mov    %eax,-0x4c(%ebp)
4c45c5:	8b 45 a0             	mov    -0x60(%ebp),%eax
4c45c8:	89 45 b8             	mov    %eax,-0x48(%ebp)
4c45cb:	8d 4d 94             	lea    -0x6c(%ebp),%ecx
4c45ce:	8b 55 e8             	mov    -0x18(%ebp),%edx
4c45d1:	4a                   	dec    %edx
4c45d2:	8b c3                	mov    %ebx,%eax
4c45d4:	e8 73 60 f5 ff       	call   0x41a64c
4c45d9:	8b 45 94             	mov    -0x6c(%ebp),%eax
4c45dc:	89 45 bc             	mov    %eax,-0x44(%ebp)
4c45df:	8b 45 98             	mov    -0x68(%ebp),%eax
4c45e2:	89 45 c0             	mov    %eax,-0x40(%ebp)
4c45e5:	8d 55 ac             	lea    -0x54(%ebp),%edx
4c45e8:	b9 02 00 00 00       	mov    $0x2,%ecx
4c45ed:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c45f0:	e8 0b 42 f6 ff       	call   0x428800
4c45f5:	56                   	push   %esi
4c45f6:	57                   	push   %edi
4c45f7:	8d 75 d7             	lea    -0x29(%ebp),%esi
4c45fa:	8d 7d c7             	lea    -0x39(%ebp),%edi
4c45fd:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c45fe:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c45ff:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c4600:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c4601:	5f                   	pop    %edi
4c4602:	5e                   	pop    %esi
4c4603:	8b 45 db             	mov    -0x25(%ebp),%eax
4c4606:	03 45 e3             	add    -0x1d(%ebp),%eax
4c4609:	d1 f8                	sar    $1,%eax
4c460b:	79 03                	jns    0x4c4610
4c460d:	83 d0 00             	adc    $0x0,%eax
4c4610:	89 45 cb             	mov    %eax,-0x35(%ebp)
4c4613:	56                   	push   %esi
4c4614:	57                   	push   %edi
4c4615:	8d 75 c7             	lea    -0x39(%ebp),%esi
4c4618:	8d 7d d7             	lea    -0x29(%ebp),%edi
4c461b:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c461c:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c461d:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c461e:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c461f:	5f                   	pop    %edi
4c4620:	5e                   	pop    %esi
4c4621:	ff 45 db             	incl   -0x25(%ebp)
4c4624:	f6 45 f4 08          	testb  $0x8,-0xc(%ebp)
4c4628:	0f 95 c3             	setne  %bl
4c462b:	88 5e 09             	mov    %bl,0x9(%esi)
4c462e:	80 7d ef 00          	cmpb   $0x0,-0x11(%ebp)
4c4632:	0f 85 e6 00 00 00    	jne    0x4c471e
4c4638:	8a 45 ff             	mov    -0x1(%ebp),%al
4c463b:	0a c3                	or     %bl,%al
4c463d:	75 06                	jne    0x4c4645
4c463f:	80 7d fe 00          	cmpb   $0x0,-0x2(%ebp)
4c4643:	74 4a                	je     0x4c468f
4c4645:	84 db                	test   %bl,%bl
4c4647:	74 19                	je     0x4c4662
4c4649:	68 c0 c0 c0 00       	push   $0xc0c0c0
4c464e:	6a 01                	push   $0x1
4c4650:	8d 55 d7             	lea    -0x29(%ebp),%edx
4c4653:	b9 ff ff ff 00       	mov    $0xffffff,%ecx
4c4658:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c465b:	e8 40 ef ff ff       	call   0x4c35a0
4c4660:	eb 6b                	jmp    0x4c46cd
4c4662:	80 7d ff 00          	cmpb   $0x0,-0x1(%ebp)
4c4666:	74 65                	je     0x4c46cd
4c4668:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c466b:	e8 50 46 f6 ff       	call   0x428cc0
4c4670:	8d 55 c7             	lea    -0x39(%ebp),%edx
4c4673:	b9 f0 f0 f4 00       	mov    $0xf4f0f0,%ecx
4c4678:	e8 67 47 fc ff       	call   0x488de4
4c467d:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c4680:	8b 40 10             	mov    0x10(%eax),%eax
4c4683:	ba 80 80 80 00       	mov    $0x808080,%edx
4c4688:	e8 f7 38 f6 ff       	call   0x427f84
4c468d:	eb 3e                	jmp    0x4c46cd
4c468f:	8b 06                	mov    (%esi),%eax
4c4691:	25 00 10 00 00       	and    $0x1000,%eax
4c4696:	3d 00 10 00 00       	cmp    $0x1000,%eax
4c469b:	75 30                	jne    0x4c46cd
4c469d:	80 7d fe 00          	cmpb   $0x0,-0x2(%ebp)
4c46a1:	75 12                	jne    0x4c46b5
4c46a3:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c46a6:	8b 40 10             	mov    0x10(%eax),%eax
4c46a9:	ba 05 00 00 80       	mov    $0x80000005,%edx
4c46ae:	e8 d1 38 f6 ff       	call   0x427f84
4c46b3:	eb 18                	jmp    0x4c46cd
4c46b5:	8b d6                	mov    %esi,%edx
4c46b7:	b1 02                	mov    $0x2,%cl
4c46b9:	8b c7                	mov    %edi,%eax
4c46bb:	e8 f8 ec ff ff       	call   0x4c33b8
4c46c0:	8b d0                	mov    %eax,%edx
4c46c2:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c46c5:	8b 40 10             	mov    0x10(%eax),%eax
4c46c8:	e8 b7 38 f6 ff       	call   0x427f84
4c46cd:	84 db                	test   %bl,%bl
4c46cf:	74 10                	je     0x4c46e1
4c46d1:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c46d4:	8b 40 10             	mov    0x10(%eax),%eax
4c46d7:	ba 80 80 80 00       	mov    $0x808080,%edx
4c46dc:	e8 a3 38 f6 ff       	call   0x427f84
4c46e1:	8b 4d d3             	mov    -0x2d(%ebp),%ecx
4c46e4:	49                   	dec    %ecx
4c46e5:	8b 5d c7             	mov    -0x39(%ebp),%ebx
4c46e8:	8b d3                	mov    %ebx,%edx
4c46ea:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c46ed:	e8 e2 40 f6 ff       	call   0x4287d4
4c46f2:	8b 4d cb             	mov    -0x35(%ebp),%ecx