46931b:	6a 00                	push   $0x0
46931d:	ff 75 10             	push   0x10(%ebp)
469320:	68 01 04 00 00       	push   $0x401
469325:	ff 37                	push   (%edi)
469327:	ff 15 70 d6 48 00    	call   *0x48d670
46932d:	83 3d 30 16 4c 00 00 	cmpl   $0x0,0x4c1630
469334:	75 0c                	jne    0x469342
469336:	b9 00 03 00 00       	mov    $0x300,%ecx
46933b:	66 89 8e 86 00 00 00 	mov    %cx,0x86(%esi)
469342:	b0 01                	mov    $0x1,%al
469344:	5f                   	pop    %edi
469345:	5e                   	pop    %esi
469346:	5b                   	pop    %ebx
469347:	5d                   	pop    %ebp
469348:	c2 28 00             	ret    $0x28
46934b:	55                   	push   %ebp
46934c:	8b ec                	mov    %esp,%ebp
46934e:	8b 45 28             	mov    0x28(%ebp),%eax
469351:	83 f8 ff             	cmp    $0xffffffff,%eax
469354:	75 03                	jne    0x469359
469356:	6a 03                	push   $0x3
469358:	58                   	pop    %eax
469359:	a8 07                	test   $0x7,%al
46935b:	75 03                	jne    0x469360
46935d:	83 c8 03             	or     $0x3,%eax
469360:	56                   	push   %esi
469361:	0d 00 00 01 00       	or     $0x10000,%eax
469366:	50                   	push   %eax
469367:	e8 7f 4f 00 00       	call   0x46e2eb
46936c:	8b 4d 2c             	mov    0x2c(%ebp),%ecx
46936f:	6a 01                	push   $0x1
469371:	41                   	inc    %ecx
469372:	f7 d9                	neg    %ecx
469374:	1b c9                	sbb    %ecx,%ecx
469376:	23 4d 2c             	and    0x2c(%ebp),%ecx
469379:	51                   	push   %ecx
46937a:	ff 75 10             	push   0x10(%ebp)
46937d:	ff 75 24             	push   0x24(%ebp)
469380:	ff 75 20             	push   0x20(%ebp)
469383:	ff 75 1c             	push   0x1c(%ebp)
469386:	ff 75 18             	push   0x18(%ebp)
469389:	50                   	push   %eax
46938a:	ff 75 14             	push   0x14(%ebp)
46938d:	68 d4 4a 4b 00       	push   $0x4b4ad4
469392:	51                   	push   %ecx
469393:	ff 75 08             	push   0x8(%ebp)
469396:	e8 e1 3d fb ff       	call   0x41d17c
46939b:	8b 75 0c             	mov    0xc(%ebp),%esi
46939e:	89 06                	mov    %eax,(%esi)
4693a0:	85 c0                	test   %eax,%eax
4693a2:	75 04                	jne    0x4693a8
4693a4:	32 c0                	xor    %al,%al
4693a6:	eb 22                	jmp    0x4693ca
4693a8:	6a 12                	push   $0x12
4693aa:	ff 15 08 d5 48 00    	call   *0x48d508
4693b0:	89 46 4c             	mov    %eax,0x4c(%esi)
4693b3:	83 3d 30 16 4c 00 00 	cmpl   $0x0,0x4c1630
4693ba:	75 0c                	jne    0x4693c8
4693bc:	b9 00 02 00 00       	mov    $0x200,%ecx
4693c1:	66 89 8e 86 00 00 00 	mov    %cx,0x86(%esi)
4693c8:	b0 01                	mov    $0x1,%al
4693ca:	5e                   	pop    %esi
4693cb:	5d                   	pop    %ebp
4693cc:	c2 28 00             	ret    $0x28
4693cf:	55                   	push   %ebp
4693d0:	8b ec                	mov    %esp,%ebp
4693d2:	8b 45 28             	mov    0x28(%ebp),%eax
4693d5:	53                   	push   %ebx
4693d6:	56                   	push   %esi
4693d7:	57                   	push   %edi
4693d8:	83 cf ff             	or     $0xffffffff,%edi
4693db:	3b c7                	cmp    %edi,%eax
4693dd:	75 05                	jne    0x4693e4
4693df:	b8 42 00 20 00       	mov    $0x200042,%eax
4693e4:	0d 00 00 01 00       	or     $0x10000,%eax
4693e9:	50                   	push   %eax
4693ea:	e8 fc 4e 00 00       	call   0x46e2eb
4693ef:	8b 55 2c             	mov    0x2c(%ebp),%edx
4693f2:	8b f0                	mov    %eax,%esi
4693f4:	b8 00 02 00 00       	mov    $0x200,%eax
4693f9:	3b d7                	cmp    %edi,%edx
4693fb:	75 02                	jne    0x4693ff
4693fd:	8b d0                	mov    %eax,%edx
4693ff:	8b 4d 20             	mov    0x20(%ebp),%ecx
469402:	3b cf                	cmp    %edi,%ecx
469404:	75 05                	jne    0x46940b
469406:	b9 c8 00 00 00       	mov    $0xc8,%ecx
46940b:	8b 45 24             	mov    0x24(%ebp),%eax
46940e:	3b c7                	cmp    %edi,%eax
469410:	75 05                	jne    0x469417
469412:	b8 96 00 00 00       	mov    $0x96,%eax
469417:	6a 01                	push   $0x1
469419:	51                   	push   %ecx
46941a:	ff 75 10             	push   0x10(%ebp)
46941d:	33 db                	xor    %ebx,%ebx
46941f:	50                   	push   %eax
469420:	51                   	push   %ecx
469421:	ff 75 1c             	push   0x1c(%ebp)
469424:	ff 75 18             	push   0x18(%ebp)
469427:	56                   	push   %esi
469428:	53                   	push   %ebx
469429:	68 e4 4a 4b 00       	push   $0x4b4ae4
46942e:	52                   	push   %edx
46942f:	ff 75 08             	push   0x8(%ebp)
469432:	e8 45 3d fb ff       	call   0x41d17c
469437:	8b 7d 0c             	mov    0xc(%ebp),%edi
46943a:	8b c8                	mov    %eax,%ecx
46943c:	89 0f                	mov    %ecx,(%edi)
46943e:	85 c9                	test   %ecx,%ecx
469440:	75 04                	jne    0x469446
469442:	32 c0                	xor    %al,%al
469444:	eb 39                	jmp    0x46947f
469446:	8b 45 14             	mov    0x14(%ebp),%eax
469449:	66 39 18             	cmp    %bx,(%eax)
46944c:	74 1b                	je     0x469469
46944e:	8b 35 70 d6 48 00    	mov    0x48d670,%esi
469454:	50                   	push   %eax
469455:	53                   	push   %ebx
469456:	68 43 01 00 00       	push   $0x143
46945b:	51                   	push   %ecx
46945c:	ff d6                	call   *%esi
46945e:	53                   	push   %ebx
46945f:	53                   	push   %ebx
469460:	68 4e 01 00 00       	push   $0x14e
469465:	ff 37                	push   (%edi)
469467:	ff d6                	call   *%esi
469469:	39 1d 30 16 4c 00    	cmp    %ebx,0x4c1630
46946f:	75 0c                	jne    0x46947d
469471:	b9 00 02 00 00       	mov    $0x200,%ecx
469476:	66 89 8f 86 00 00 00 	mov    %cx,0x86(%edi)
46947d:	b0 01                	mov    $0x1,%al
46947f:	5f                   	pop    %edi
469480:	5e                   	pop    %esi
469481:	5b                   	pop    %ebx
469482:	5d                   	pop    %ebp
469483:	c2 28 00             	ret    $0x28
469486:	55                   	push   %ebp
469487:	8b ec                	mov    %esp,%ebp
469489:	51                   	push   %ecx
46948a:	83 7d 14 ff          	cmpl   $0xffffffff,0x14(%ebp)
46948e:	56                   	push   %esi
46948f:	57                   	push   %edi
469490:	75 3d                	jne    0x4694cf
469492:	8b 75 08             	mov    0x8(%ebp),%esi
469495:	8b 7d 0c             	mov    0xc(%ebp),%edi
469498:	83 be a0 01 00 00 00 	cmpl   $0x0,0x1a0(%esi)
46949f:	0f 85 ab 00 00 00    	jne    0x469550
4694a5:	ff 15 f8 d6 48 00    	call   *0x48d6f8
4694ab:	89 86 a0 01 00 00    	mov    %eax,0x1a0(%esi)
4694b1:	89 86 a4 01 00 00    	mov    %eax,0x1a4(%esi)
4694b7:	89 47 0c             	mov    %eax,0xc(%edi)
4694ba:	83 be a0 01 00 00 00 	cmpl   $0x0,0x1a0(%esi)
4694c1:	0f 85 89 00 00 00    	jne    0x469550
4694c7:	32 c0                	xor    %al,%al
4694c9:	5f                   	pop    %edi
4694ca:	5e                   	pop    %esi
4694cb:	c9                   	leave
4694cc:	c2 10 00             	ret    $0x10
4694cf:	8d 45 fc             	lea    -0x4(%ebp),%eax
4694d2:	50                   	push   %eax
4694d3:	8d 45 08             	lea    0x8(%ebp),%eax
4694d6:	50                   	push   %eax
4694d7:	ff 75 14             	push   0x14(%ebp)
4694da:	b9 28 16 4c 00       	mov    $0x4c1628,%ecx
4694df:	e8 1a 3f fa ff       	call   0x40d3fe
4694e4:	84 c0                	test   %al,%al
4694e6:	74 df                	je     0x4694c7
4694e8:	8b 4d 08             	mov    0x8(%ebp),%ecx
4694eb:	a1 88 16 4c 00       	mov    0x4c1688,%eax
4694f0:	8b 75 fc             	mov    -0x4(%ebp),%esi
4694f3:	8b 04 88             	mov    (%eax,%ecx,4),%eax
4694f6:	8b 00                	mov    (%eax),%eax
4694f8:	89 45 14             	mov    %eax,0x14(%ebp)
4694fb:	a1 9c 16 4c 00       	mov    0x4c169c,%eax
469500:	8b 04 b0             	mov    (%eax,%esi,4),%eax
469503:	8b 08                	mov    (%eax),%ecx
469505:	8a 81 90 00 00 00    	mov    0x90(%ecx),%al
46950b:	3c 0e                	cmp    $0xe,%al
46950d:	74 b8                	je     0x4694c7
46950f:	3c 0f                	cmp    $0xf,%al
469511:	74 b4                	je     0x4694c7
469513:	3c 02                	cmp    $0x2,%al
469515:	74 b0                	je     0x4694c7
469517:	3c 03                	cmp    $0x3,%al
469519:	74 ac                	je     0x4694c7
46951b:	83 79 0c 00          	cmpl   $0x0,0xc(%ecx)
46951f:	75 a6                	jne    0x4694c7
469521:	ff 15 f8 d6 48 00    	call   *0x48d6f8
469527:	8b 7d 0c             	mov    0xc(%ebp),%edi
46952a:	8b 4d 14             	mov    0x14(%ebp),%ecx
46952d:	89 47 0c             	mov    %eax,0xc(%edi)
469530:	89 81 a4 01 00 00    	mov    %eax,0x1a4(%ecx)
469536:	a1 9c 16 4c 00       	mov    0x4c169c,%eax
46953b:	8b 04 b0             	mov    (%eax,%esi,4),%eax
46953e:	8b 08                	mov    (%eax),%ecx
469540:	8b 47 0c             	mov    0xc(%edi),%eax
469543:	89 41 0c             	mov    %eax,0xc(%ecx)
469546:	83 7f 0c 00          	cmpl   $0x0,0xc(%edi)
46954a:	0f 84 77 ff ff ff    	je     0x4694c7
469550:	c6 87 92 00 00 00 00 	movb   $0x0,0x92(%edi)
469557:	b0 01                	mov    $0x1,%al
469559:	e9 6b ff ff ff       	jmp    0x4694c9
46955e:	55                   	push   %ebp
46955f:	8b ec                	mov    %esp,%ebp
469561:	8b 45 28             	mov    0x28(%ebp),%eax
469564:	83 ec 14             	sub    $0x14,%esp
469567:	53                   	push   %ebx
469568:	56                   	push   %esi
469569:	83 ce ff             	or     $0xffffffff,%esi
46956c:	57                   	push   %edi
46956d:	3b c6                	cmp    %esi,%eax
46956f:	75 03                	jne    0x469574
469571:	6a 04                	push   $0x4
469573:	58                   	pop    %eax
469574:	0d 00 00 01 00       	or     $0x10000,%eax
469579:	50                   	push   %eax
46957a:	e8 6c 4d 00 00       	call   0x46e2eb
46957f:	8b 55 2c             	mov    0x2c(%ebp),%edx
469582:	8b d8                	mov    %eax,%ebx
469584:	bf 00 02 00 00       	mov    $0x200,%edi
469589:	3b d6                	cmp    %esi,%edx
46958b:	75 02                	jne    0x46958f
46958d:	8b d7                	mov    %edi,%edx
46958f:	8b 45 20             	mov    0x20(%ebp),%eax
469592:	3b c6                	cmp    %esi,%eax
469594:	75 05                	jne    0x46959b
469596:	b8 c8 00 00 00       	mov    $0xc8,%eax
46959b:	8b 4d 24             	mov    0x24(%ebp),%ecx
46959e:	3b ce                	cmp    %esi,%ecx
4695a0:	75 03                	jne    0x4695a5
4695a2:	6a 14                	push   $0x14
4695a4:	59                   	pop    %ecx
4695a5:	6a 01                	push   $0x1
4695a7:	51                   	push   %ecx
4695a8:	ff 75 10             	push   0x10(%ebp)
4695ab:	51                   	push   %ecx
4695ac:	50                   	push   %eax
4695ad:	ff 75 1c             	push   0x1c(%ebp)
4695b0:	ff 75 18             	push   0x18(%ebp)
4695b3:	53                   	push   %ebx
4695b4:	6a 00                	push   $0x0
4695b6:	68 08 4b 4b 00       	push   $0x4b4b08
4695bb:	52                   	push   %edx
4695bc:	ff 75 08             	push   0x8(%ebp)
4695bf:	e8 b8 3b fb ff       	call   0x41d17c
4695c4:	8b 75 0c             	mov    0xc(%ebp),%esi
4695c7:	89 06                	mov    %eax,(%esi)
4695c9:	85 c0                	test   %eax,%eax
4695cb:	75 04                	jne    0x4695d1
4695cd:	32 c0                	xor    %al,%al
4695cf:	eb 3f                	jmp    0x469610
4695d1:	8b 4d 14             	mov    0x14(%ebp),%ecx
4695d4:	c0 eb 03             	shr    $0x3,%bl
4695d7:	f6 d3                	not    %bl
4695d9:	80 e3 01             	and    $0x1,%bl
4695dc:	8a c3                	mov    %bl,%al
4695de:	6a 01                	push   $0x1
4695e0:	8d 55 f0             	lea    -0x10(%ebp),%edx
4695e3:	50                   	push   %eax
4695e4:	e8 c8 e7 fd ff       	call   0x447db1
4695e9:	59                   	pop    %ecx
4695ea:	59                   	pop    %ecx
4695eb:	8d 45 f0             	lea    -0x10(%ebp),%eax
4695ee:	50                   	push   %eax
4695ef:	6a 00                	push   $0x0
4695f1:	68 02 10 00 00       	push   $0x1002
4695f6:	ff 36                	push   (%esi)
4695f8:	ff 15 70 d6 48 00    	call   *0x48d670
4695fe:	83 3d 30 16 4c 00 00 	cmpl   $0x0,0x4c1630
469605:	75 07                	jne    0x46960e
469607:	66 89 be 86 00 00 00 	mov    %di,0x86(%esi)
46960e:	b0 01                	mov    $0x1,%al
469610:	5f                   	pop    %edi
469611:	5e                   	pop    %esi
469612:	5b                   	pop    %ebx
469613:	c9                   	leave
469614:	c2 28 00             	ret    $0x28
469617:	55                   	push   %ebp
469618:	8b ec                	mov    %esp,%ebp
46961a:	8b 45 28             	mov    0x28(%ebp),%eax
46961d:	83 f8 ff             	cmp    $0xffffffff,%eax
469620:	75 05                	jne    0x469627
469622:	b8 c0 10 30 00       	mov    $0x3010c0,%eax
469627:	53                   	push   %ebx
469628:	56                   	push   %esi
469629:	a9 00 08 00 00       	test   $0x800,%eax
46962e:	74 05                	je     0x469635
469630:	83 c8 04             	or     $0x4,%eax
469633:	eb 05                	jmp    0x46963a
469635:	0d 04 00 01 00       	or     $0x10004,%eax
46963a:	50                   	push   %eax
46963b:	e8 ab 4c 00 00       	call   0x46e2eb
469640:	8b f0                	mov    %eax,%esi
469642:	8b 45 2c             	mov    0x2c(%ebp),%eax
469645:	83 f8 ff             	cmp    $0xffffffff,%eax
469648:	75 05                	jne    0x46964f
46964a:	b8 00 02 00 00       	mov    $0x200,%eax
46964f:	8b 4d 20             	mov    0x20(%ebp),%ecx
469652:	83 f9 ff             	cmp    $0xffffffff,%ecx
469655:	75 05                	jne    0x46965c
469657:	b9 c8 00 00 00       	mov    $0xc8,%ecx
46965c:	8b 55 24             	mov    0x24(%ebp),%edx
46965f:	83 fa ff             	cmp    $0xffffffff,%edx
469662:	75 05                	jne    0x469669
469664:	ba 96 00 00 00       	mov    $0x96,%edx
469669:	33 db                	xor    %ebx,%ebx
46966b:	43                   	inc    %ebx
46966c:	53                   	push   %ebx
46966d:	51                   	push   %ecx
46966e:	ff 75 10             	push   0x10(%ebp)
469671:	52                   	push   %edx
469672:	51                   	push   %ecx
469673:	ff 75 1c             	push   0x1c(%ebp)
469676:	ff 75 18             	push   0x18(%ebp)
469679:	56                   	push   %esi
46967a:	ff 75 14             	push   0x14(%ebp)
46967d:	68 cc da 49 00       	push   $0x49dacc
469682:	50                   	push   %eax
469683:	ff 75 08             	push   0x8(%ebp)
469686:	e8 f1 3a fb ff       	call   0x41d17c
46968b:	8b 75 0c             	mov    0xc(%ebp),%esi
46968e:	89 06                	mov    %eax,(%esi)
469690:	85 c0                	test   %eax,%eax
469692:	75 04                	jne    0x469698
469694:	32 c0                	xor    %al,%al
469696:	eb 28                	jmp    0x4696c0
469698:	50                   	push   %eax
469699:	ff 15 58 d5 48 00    	call   *0x48d558
46969f:	50                   	push   %eax
4696a0:	50                   	push   %eax
4696a1:	68 b1 00 00 00       	push   $0xb1
4696a6:	ff 36                	push   (%esi)
4696a8:	ff 15 70 d6 48 00    	call   *0x48d670
4696ae:	83 3d 30 16 4c 00 00 	cmpl   $0x0,0x4c1630
4696b5:	75 07                	jne    0x4696be
4696b7:	66 89 9e 86 00 00 00 	mov    %bx,0x86(%esi)
4696be:	8a c3                	mov    %bl,%al
4696c0:	5e                   	pop    %esi
4696c1:	5b                   	pop    %ebx
4696c2:	5d                   	pop    %ebp
4696c3:	c2 28 00             	ret    $0x28
4696c6:	55                   	push   %ebp
4696c7:	8b ec                	mov    %esp,%ebp
4696c9:	8b 45 28             	mov    0x28(%ebp),%eax
4696cc:	40                   	inc    %eax
4696cd:	f7 d8                	neg    %eax
4696cf:	1b c0                	sbb    %eax,%eax
4696d1:	23 45 28             	and    0x28(%ebp),%eax
4696d4:	53                   	push   %ebx
4696d5:	56                   	push   %esi