46a27b:	ff 15 04 d1 48 00    	call   *0x48d104
46a281:	6a 00                	push   $0x0
46a283:	6a 00                	push   $0x0
46a285:	56                   	push   %esi
46a286:	ff 15 14 d1 48 00    	call   *0x48d114
46a28c:	56                   	push   %esi
46a28d:	8b f8                	mov    %eax,%edi
46a28f:	ff 15 10 d1 48 00    	call   *0x48d110
46a295:	6a ec                	push   $0xffffffec
46a297:	ff 33                	push   (%ebx)
46a299:	ff 15 44 d6 48 00    	call   *0x48d644
46a29f:	a9 00 00 08 00       	test   $0x80000,%eax
46a2a4:	74 0d                	je     0x46a2b3
46a2a6:	6a 01                	push   $0x1
46a2a8:	6a 00                	push   $0x0
46a2aa:	57                   	push   %edi
46a2ab:	ff 33                	push   (%ebx)
46a2ad:	ff 15 f4 d4 48 00    	call   *0x48d4f4
46a2b3:	b0 01                	mov    $0x1,%al
46a2b5:	eb 0a                	jmp    0x46a2c1
46a2b7:	ff 37                	push   (%edi)
46a2b9:	ff 15 24 d6 48 00    	call   *0x48d624
46a2bf:	32 c0                	xor    %al,%al
46a2c1:	5f                   	pop    %edi
46a2c2:	5e                   	pop    %esi
46a2c3:	5b                   	pop    %ebx
46a2c4:	5d                   	pop    %ebp
46a2c5:	c2 28 00             	ret    $0x28
46a2c8:	55                   	push   %ebp
46a2c9:	8b ec                	mov    %esp,%ebp
46a2cb:	8b 45 28             	mov    0x28(%ebp),%eax
46a2ce:	40                   	inc    %eax
46a2cf:	f7 d8                	neg    %eax
46a2d1:	56                   	push   %esi
46a2d2:	1b c0                	sbb    %eax,%eax
46a2d4:	23 45 28             	and    0x28(%ebp),%eax
46a2d7:	57                   	push   %edi
46a2d8:	50                   	push   %eax
46a2d9:	e8 0d 40 00 00       	call   0x46e2eb
46a2de:	8b 4d 2c             	mov    0x2c(%ebp),%ecx
46a2e1:	41                   	inc    %ecx
46a2e2:	f7 d9                	neg    %ecx
46a2e4:	1b c9                	sbb    %ecx,%ecx
46a2e6:	23 4d 2c             	and    0x2c(%ebp),%ecx
46a2e9:	33 f6                	xor    %esi,%esi
46a2eb:	56                   	push   %esi
46a2ec:	51                   	push   %ecx
46a2ed:	ff 75 10             	push   0x10(%ebp)
46a2f0:	ff 75 24             	push   0x24(%ebp)
46a2f3:	ff 75 20             	push   0x20(%ebp)
46a2f6:	ff 75 1c             	push   0x1c(%ebp)
46a2f9:	ff 75 18             	push   0x18(%ebp)
46a2fc:	50                   	push   %eax
46a2fd:	56                   	push   %esi
46a2fe:	68 6c 4b 4b 00       	push   $0x4b4b6c
46a303:	51                   	push   %ecx
46a304:	ff 75 08             	push   0x8(%ebp)
46a307:	e8 70 2e fb ff       	call   0x41d17c
46a30c:	8b 7d 0c             	mov    0xc(%ebp),%edi
46a30f:	89 07                	mov    %eax,(%edi)
46a311:	85 c0                	test   %eax,%eax
46a313:	75 04                	jne    0x46a319
46a315:	32 c0                	xor    %al,%al
46a317:	eb 5c                	jmp    0x46a375
46a319:	53                   	push   %ebx
46a31a:	bb 00 00 00 ff       	mov    $0xff000000,%ebx
46a31f:	53                   	push   %ebx
46a320:	56                   	push   %esi
46a321:	8b 35 70 d6 48 00    	mov    0x48d670,%esi
46a327:	68 01 20 00 00       	push   $0x2001
46a32c:	50                   	push   %eax
46a32d:	ff d6                	call   *%esi
46a32f:	53                   	push   %ebx
46a330:	33 db                	xor    %ebx,%ebx
46a332:	53                   	push   %ebx
46a333:	68 09 04 00 00       	push   $0x409
46a338:	ff 37                	push   (%edi)
46a33a:	ff d6                	call   *%esi
46a33c:	53                   	push   %ebx
46a33d:	53                   	push   %ebx
46a33e:	68 02 04 00 00       	push   $0x402
46a343:	ff 37                	push   (%edi)
46a345:	ff d6                	call   *%esi
46a347:	68 00 00 64 00       	push   $0x640000
46a34c:	53                   	push   %ebx
46a34d:	68 01 04 00 00       	push   $0x401
46a352:	ff 37                	push   (%edi)
46a354:	ff d6                	call   *%esi
46a356:	53                   	push   %ebx
46a357:	43                   	inc    %ebx
46a358:	53                   	push   %ebx
46a359:	68 04 04 00 00       	push   $0x404
46a35e:	ff 37                	push   (%edi)
46a360:	ff d6                	call   *%esi
46a362:	83 3d 30 16 4c 00 00 	cmpl   $0x0,0x4c1630
46a369:	75 07                	jne    0x46a372
46a36b:	66 89 9f 86 00 00 00 	mov    %bx,0x86(%edi)
46a372:	8a c3                	mov    %bl,%al
46a374:	5b                   	pop    %ebx
46a375:	5f                   	pop    %edi
46a376:	5e                   	pop    %esi
46a377:	5d                   	pop    %ebp
46a378:	c2 28 00             	ret    $0x28
46a37b:	55                   	push   %ebp
46a37c:	8b ec                	mov    %esp,%ebp
46a37e:	8b 45 28             	mov    0x28(%ebp),%eax
46a381:	40                   	inc    %eax
46a382:	f7 d8                	neg    %eax
46a384:	1b c0                	sbb    %eax,%eax
46a386:	23 45 28             	and    0x28(%ebp),%eax
46a389:	83 c8 09             	or     $0x9,%eax
46a38c:	50                   	push   %eax
46a38d:	e8 59 3f 00 00       	call   0x46e2eb
46a392:	8b 55 08             	mov    0x8(%ebp),%edx
46a395:	8b c8                	mov    %eax,%ecx
46a397:	80 7a 69 00          	cmpb   $0x0,0x69(%edx)
46a39b:	75 0a                	jne    0x46a3a7
46a39d:	81 c9 00 00 01 00    	or     $0x10000,%ecx
46a3a3:	c6 42 69 01          	movb   $0x1,0x69(%edx)
46a3a7:	8b 45 2c             	mov    0x2c(%ebp),%eax
46a3aa:	56                   	push   %esi
46a3ab:	6a 01                	push   $0x1
46a3ad:	51                   	push   %ecx
46a3ae:	ff 75 10             	push   0x10(%ebp)
46a3b1:	40                   	inc    %eax
46a3b2:	ff 75 24             	push   0x24(%ebp)
46a3b5:	f7 d8                	neg    %eax
46a3b7:	ff 75 20             	push   0x20(%ebp)
46a3ba:	1b c0                	sbb    %eax,%eax
46a3bc:	ff 75 1c             	push   0x1c(%ebp)
46a3bf:	23 45 2c             	and    0x2c(%ebp),%eax
46a3c2:	ff 75 18             	push   0x18(%ebp)
46a3c5:	51                   	push   %ecx
46a3c6:	ff 75 14             	push   0x14(%ebp)
46a3c9:	68 d4 4a 4b 00       	push   $0x4b4ad4
46a3ce:	50                   	push   %eax
46a3cf:	52                   	push   %edx
46a3d0:	e8 a7 2d fb ff       	call   0x41d17c
46a3d5:	8b 75 0c             	mov    0xc(%ebp),%esi
46a3d8:	89 06                	mov    %eax,(%esi)
46a3da:	85 c0                	test   %eax,%eax
46a3dc:	75 04                	jne    0x46a3e2
46a3de:	32 c0                	xor    %al,%al
46a3e0:	eb 22                	jmp    0x46a404
46a3e2:	6a 12                	push   $0x12
46a3e4:	ff 15 08 d5 48 00    	call   *0x48d508
46a3ea:	89 46 4c             	mov    %eax,0x4c(%esi)
46a3ed:	83 3d 30 16 4c 00 00 	cmpl   $0x0,0x4c1630
46a3f4:	75 0c                	jne    0x46a402
46a3f6:	b9 00 02 00 00       	mov    $0x200,%ecx
46a3fb:	66 89 8e 86 00 00 00 	mov    %cx,0x86(%esi)
46a402:	b0 01                	mov    $0x1,%al
46a404:	5e                   	pop    %esi
46a405:	5d                   	pop    %ebp
46a406:	c2 28 00             	ret    $0x28
46a409:	55                   	push   %ebp
46a40a:	8b ec                	mov    %esp,%ebp
46a40c:	8b 45 28             	mov    0x28(%ebp),%eax
46a40f:	33 c9                	xor    %ecx,%ecx
46a411:	83 f8 ff             	cmp    $0xffffffff,%eax
46a414:	75 03                	jne    0x46a419
46a416:	8d 41 01             	lea    0x1(%ecx),%eax
46a419:	53                   	push   %ebx
46a41a:	56                   	push   %esi
46a41b:	57                   	push   %edi
46a41c:	50                   	push   %eax
46a41d:	e8 c9 3e 00 00       	call   0x46e2eb
46a422:	8b 4d 2c             	mov    0x2c(%ebp),%ecx
46a425:	41                   	inc    %ecx
46a426:	f7 d9                	neg    %ecx
46a428:	1b c9                	sbb    %ecx,%ecx
46a42a:	23 4d 2c             	and    0x2c(%ebp),%ecx
46a42d:	33 ff                	xor    %edi,%edi
46a42f:	57                   	push   %edi
46a430:	51                   	push   %ecx
46a431:	ff 75 10             	push   0x10(%ebp)
46a434:	8b d8                	mov    %eax,%ebx
46a436:	ff 75 24             	push   0x24(%ebp)
46a439:	ff 75 20             	push   0x20(%ebp)
46a43c:	ff 75 1c             	push   0x1c(%ebp)
46a43f:	ff 75 18             	push   0x18(%ebp)
46a442:	53                   	push   %ebx
46a443:	57                   	push   %edi
46a444:	68 90 4b 4b 00       	push   $0x4b4b90
46a449:	51                   	push   %ecx
46a44a:	ff 75 08             	push   0x8(%ebp)
46a44d:	e8 2a 2d fb ff       	call   0x41d17c
46a452:	8b 75 0c             	mov    0xc(%ebp),%esi
46a455:	89 06                	mov    %eax,(%esi)
46a457:	85 c0                	test   %eax,%eax
46a459:	75 04                	jne    0x46a45f
46a45b:	32 c0                	xor    %al,%al
46a45d:	eb 45                	jmp    0x46a4a4
46a45f:	57                   	push   %edi
46a460:	57                   	push   %edi
46a461:	8b 3d 70 d6 48 00    	mov    0x48d670,%edi
46a467:	68 05 04 00 00       	push   $0x405
46a46c:	50                   	push   %eax
46a46d:	ff d7                	call   *%edi
46a46f:	f6 c3 01             	test   $0x1,%bl
46a472:	74 1d                	je     0x46a491
46a474:	68 00 00 64 00       	push   $0x640000
46a479:	6a 00                	push   $0x0
46a47b:	68 06 04 00 00       	push   $0x406
46a480:	ff 36                	push   (%esi)
46a482:	ff d7                	call   *%edi
46a484:	6a 00                	push   $0x0
46a486:	6a 0a                	push   $0xa
46a488:	68 14 04 00 00       	push   $0x414
46a48d:	ff 36                	push   (%esi)
46a48f:	ff d7                	call   *%edi
46a491:	33 c0                	xor    %eax,%eax
46a493:	40                   	inc    %eax
46a494:	83 3d 30 16 4c 00 00 	cmpl   $0x0,0x4c1630
46a49b:	75 07                	jne    0x46a4a4
46a49d:	66 89 86 86 00 00 00 	mov    %ax,0x86(%esi)
46a4a4:	5f                   	pop    %edi
46a4a5:	5e                   	pop    %esi
46a4a6:	5b                   	pop    %ebx
46a4a7:	5d                   	pop    %ebp
46a4a8:	c2 28 00             	ret    $0x28
46a4ab:	55                   	push   %ebp
46a4ac:	8b ec                	mov    %esp,%ebp
46a4ae:	56                   	push   %esi
46a4af:	8b 75 08             	mov    0x8(%ebp),%esi
46a4b2:	83 be 88 01 00 00 00 	cmpl   $0x0,0x188(%esi)
46a4b9:	74 07                	je     0x46a4c2
46a4bb:	32 c0                	xor    %al,%al
46a4bd:	e9 c0 00 00 00       	jmp    0x46a582
46a4c2:	8b 45 28             	mov    0x28(%ebp),%eax
46a4c5:	40                   	inc    %eax
46a4c6:	f7 d8                	neg    %eax
46a4c8:	1b c0                	sbb    %eax,%eax
46a4ca:	23 45 28             	and    0x28(%ebp),%eax
46a4cd:	53                   	push   %ebx
46a4ce:	0d 00 40 01 04       	or     $0x4014000,%eax
46a4d3:	50                   	push   %eax
46a4d4:	e8 12 3e 00 00       	call   0x46e2eb
46a4d9:	8b 4d 2c             	mov    0x2c(%ebp),%ecx
46a4dc:	41                   	inc    %ecx
46a4dd:	f7 d9                	neg    %ecx
46a4df:	1b c9                	sbb    %ecx,%ecx
46a4e1:	23 4d 2c             	and    0x2c(%ebp),%ecx
46a4e4:	8b d0                	mov    %eax,%edx
46a4e6:	8b 45 20             	mov    0x20(%ebp),%eax
46a4e9:	bb 96 00 00 00       	mov    $0x96,%ebx
46a4ee:	83 f8 ff             	cmp    $0xffffffff,%eax
46a4f1:	75 05                	jne    0x46a4f8
46a4f3:	8b c3                	mov    %ebx,%eax
46a4f5:	89 45 20             	mov    %eax,0x20(%ebp)
46a4f8:	57                   	push   %edi
46a4f9:	8b 7d 24             	mov    0x24(%ebp),%edi
46a4fc:	83 ff ff             	cmp    $0xffffffff,%edi
46a4ff:	75 02                	jne    0x46a503
46a501:	8b fb                	mov    %ebx,%edi
46a503:	6a 01                	push   $0x1
46a505:	51                   	push   %ecx
46a506:	ff 75 10             	push   0x10(%ebp)
46a509:	57                   	push   %edi
46a50a:	50                   	push   %eax
46a50b:	ff 75 1c             	push   0x1c(%ebp)
46a50e:	ff 75 18             	push   0x18(%ebp)
46a511:	52                   	push   %edx
46a512:	68 00 dc 49 00       	push   $0x49dc00
46a517:	68 f0 4b 4b 00       	push   $0x4b4bf0
46a51c:	51                   	push   %ecx
46a51d:	56                   	push   %esi
46a51e:	e8 59 2c fb ff       	call   0x41d17c
46a523:	8b 5d 0c             	mov    0xc(%ebp),%ebx
46a526:	89 03                	mov    %eax,(%ebx)
46a528:	85 c0                	test   %eax,%eax
46a52a:	75 04                	jne    0x46a530
46a52c:	32 c0                	xor    %al,%al
46a52e:	eb 50                	jmp    0x46a580
46a530:	6a 20                	push   $0x20
46a532:	57                   	push   %edi
46a533:	ff 75 20             	push   0x20(%ebp)
46a536:	ff 75 1c             	push   0x1c(%ebp)
46a539:	ff 75 18             	push   0x18(%ebp)
46a53c:	6a ff                	push   $0xffffffff
46a53e:	50                   	push   %eax
46a53f:	ff 15 b4 d4 48 00    	call   *0x48d4b4
46a545:	8b 03                	mov    (%ebx),%eax
46a547:	83 8e 8c 01 00 00 ff 	orl    $0xffffffff,0x18c(%esi)
46a54e:	83 8e 90 01 00 00 ff 	orl    $0xffffffff,0x190(%esi)
46a555:	83 a6 94 01 00 00 00 	andl   $0x0,0x194(%esi)
46a55c:	89 86 88 01 00 00    	mov    %eax,0x188(%esi)
46a562:	c6 86 98 01 00 00 01 	movb   $0x1,0x198(%esi)
46a569:	83 3d 30 16 4c 00 00 	cmpl   $0x0,0x4c1630
46a570:	75 0c                	jne    0x46a57e
46a572:	b9 00 03 00 00       	mov    $0x300,%ecx
46a577:	66 89 8b 86 00 00 00 	mov    %cx,0x86(%ebx)
46a57e:	b0 01                	mov    $0x1,%al
46a580:	5f                   	pop    %edi
46a581:	5b                   	pop    %ebx
46a582:	5e                   	pop    %esi
46a583:	5d                   	pop    %ebp
46a584:	c2 28 00             	ret    $0x28
46a587:	55                   	push   %ebp
46a588:	8b ec                	mov    %esp,%ebp
46a58a:	83 ec 1c             	sub    $0x1c,%esp
46a58d:	56                   	push   %esi
46a58e:	8b 75 08             	mov    0x8(%ebp),%esi
46a591:	8b 8e 88 01 00 00    	mov    0x188(%esi),%ecx
46a597:	85 c9                	test   %ecx,%ecx
46a599:	75 07                	jne    0x46a5a2
46a59b:	32 c0                	xor    %al,%al
46a59d:	e9 98 00 00 00       	jmp    0x46a63a
46a5a2:	8b 45 14             	mov    0x14(%ebp),%eax
46a5a5:	53                   	push   %ebx
46a5a6:	33 db                	xor    %ebx,%ebx
46a5a8:	66 39 18             	cmp    %bx,(%eax)
46a5ab:	74 50                	je     0x46a5fd
46a5ad:	ff 86 8c 01 00 00    	incl   0x18c(%esi)
46a5b3:	89 45 f0             	mov    %eax,-0x10(%ebp)
46a5b6:	8b 45 10             	mov    0x10(%ebp),%eax
46a5b9:	89 45 fc             	mov    %eax,-0x4(%ebp)
46a5bc:	8d 45 e4             	lea    -0x1c(%ebp),%eax
46a5bf:	50                   	push   %eax
46a5c0:	ff b6 8c 01 00 00    	push   0x18c(%esi)
46a5c6:	c7 45 e4 09 00 00 00 	movl   $0x9,-0x1c(%ebp)
46a5cd:	68 3e 13 00 00       	push   $0x133e
46a5d2:	51                   	push   %ecx
46a5d3:	ff 15 70 d6 48 00    	call   *0x48d670
46a5d9:	8b 8e 8c 01 00 00    	mov    0x18c(%esi),%ecx
46a5df:	89 8e 90 01 00 00    	mov    %ecx,0x190(%esi)
46a5e5:	8b 4d 0c             	mov    0xc(%ebp),%ecx
46a5e8:	83 ca ff             	or     $0xffffffff,%edx
46a5eb:	c6 86 98 01 00 00 01 	movb   $0x1,0x198(%esi)
46a5f2:	66 89 91 88 00 00 00 	mov    %dx,0x88(%ecx)
46a5f9:	b0 01                	mov    $0x1,%al
46a5fb:	eb 3c                	jmp    0x46a639
46a5fd:	8b 86 94 01 00 00    	mov    0x194(%esi),%eax
46a603:	38 5e 38             	cmp    %bl,0x38(%esi)
46a606:	74 0d                	je     0x46a615
46a608:	8b 86 90 01 00 00    	mov    0x190(%esi),%eax
46a60e:	83 8e 90 01 00 00 ff 	orl    $0xffffffff,0x190(%esi)
46a615:	50                   	push   %eax
46a616:	56                   	push   %esi
46a617:	b9 28 16 4c 00       	mov    $0x4c1628,%ecx
46a61c:	e8 76 3d 00 00       	call   0x46e397
46a621:	88 9e 98 01 00 00    	mov    %bl,0x198(%esi)
46a627:	38 5e 38             	cmp    %bl,0x38(%esi)
46a62a:	74 0b                	je     0x46a637
46a62c:	6a 01                	push   $0x1
46a62e:	53                   	push   %ebx
46a62f:	ff 36                	push   (%esi)
46a631:	ff 15 40 d6 48 00    	call   *0x48d640
46a637:	32 c0                	xor    %al,%al
46a639:	5b                   	pop    %ebx