46a276:	ff 75 ec             	push   -0x14(%ebp)
46a279:	ff 35 ac 62 4c 00    	push   0x4c62ac
46a27f:	ff 15 b8 f6 48 00    	call   *0x48f6b8
46a285:	33 c0                	xor    %eax,%eax
46a287:	40                   	inc    %eax
46a288:	80 bf 18 01 00 00 00 	cmpb   $0x0,0x118(%edi)
46a28f:	89 87 f8 00 00 00    	mov    %eax,0xf8(%edi)
46a295:	74 08                	je     0x46a29f
46a297:	8b 45 08             	mov    0x8(%ebp),%eax
46a29a:	05 00 f0 ff 7f       	add    $0x7ffff000,%eax
46a29f:	8d 4d dc             	lea    -0x24(%ebp),%ecx
46a2a2:	a3 7c 62 4c 00       	mov    %eax,0x4c627c
46a2a7:	e8 b8 b7 f9 ff       	call   0x405a64
46a2ac:	8d 4d ec             	lea    -0x14(%ebp),%ecx
46a2af:	e8 b0 b7 f9 ff       	call   0x405a64
46a2b4:	8d 4d cc             	lea    -0x34(%ebp),%ecx
46a2b7:	e8 a8 b7 f9 ff       	call   0x405a64
46a2bc:	8d 4d bc             	lea    -0x44(%ebp),%ecx
46a2bf:	e8 a0 b7 f9 ff       	call   0x405a64
46a2c4:	8d 4d ac             	lea    -0x54(%ebp),%ecx
46a2c7:	e8 98 b7 f9 ff       	call   0x405a64
46a2cc:	5f                   	pop    %edi
46a2cd:	5e                   	pop    %esi
46a2ce:	5b                   	pop    %ebx
46a2cf:	8b e5                	mov    %ebp,%esp
46a2d1:	5d                   	pop    %ebp
46a2d2:	c2 08 00             	ret    $0x8
46a2d5:	55                   	push   %ebp
46a2d6:	8b ec                	mov    %esp,%ebp
46a2d8:	b8 00 20 00 00       	mov    $0x2000,%eax
46a2dd:	e8 ae 78 fc ff       	call   0x431b90
46a2e2:	56                   	push   %esi
46a2e3:	33 f6                	xor    %esi,%esi
46a2e5:	33 c0                	xor    %eax,%eax
46a2e7:	83 7d 0c ff          	cmpl   $0xffffffff,0xc(%ebp)
46a2eb:	56                   	push   %esi
46a2ec:	66 89 85 00 e0 ff ff 	mov    %ax,-0x2000(%ebp)
46a2f3:	8d 85 00 e0 ff ff    	lea    -0x2000(%ebp),%eax
46a2f9:	68 ff 0f 00 00       	push   $0xfff
46a2fe:	50                   	push   %eax
46a2ff:	56                   	push   %esi
46a300:	75 09                	jne    0x46a30b
46a302:	ff 15 40 f3 48 00    	call   *0x48f340
46a308:	50                   	push   %eax
46a309:	eb 03                	jmp    0x46a30e
46a30b:	ff 75 0c             	push   0xc(%ebp)
46a30e:	56                   	push   %esi
46a30f:	68 00 10 00 00       	push   $0x1000
46a314:	ff 15 8c f2 48 00    	call   *0x48f28c
46a31a:	8b 4d 08             	mov    0x8(%ebp),%ecx
46a31d:	8d 85 00 e0 ff ff    	lea    -0x2000(%ebp),%eax
46a323:	50                   	push   %eax
46a324:	e8 18 dc f9 ff       	call   0x407f41
46a329:	8b 45 08             	mov    0x8(%ebp),%eax
46a32c:	5e                   	pop    %esi
46a32d:	8b e5                	mov    %ebp,%esp
46a32f:	5d                   	pop    %ebp
46a330:	c2 08 00             	ret    $0x8
46a333:	55                   	push   %ebp
46a334:	8b ec                	mov    %esp,%ebp
46a336:	8b 45 08             	mov    0x8(%ebp),%eax
46a339:	85 c0                	test   %eax,%eax
46a33b:	78 1e                	js     0x46a35b
46a33d:	81 c1 70 04 00 00    	add    $0x470,%ecx
46a343:	3b 01                	cmp    (%ecx),%eax
46a345:	7d 14                	jge    0x46a35b
46a347:	50                   	push   %eax
46a348:	e8 43 ed fa ff       	call   0x419090
46a34d:	8b 4d 0c             	mov    0xc(%ebp),%ecx
46a350:	ff 30                	push   (%eax)
46a352:	e8 d5 d9 f9 ff       	call   0x407d2c
46a357:	b0 01                	mov    $0x1,%al
46a359:	eb 0a                	jmp    0x46a365
46a35b:	8b 4d 0c             	mov    0xc(%ebp),%ecx
46a35e:	e8 89 db f9 ff       	call   0x407eec
46a363:	32 c0                	xor    %al,%al
46a365:	5d                   	pop    %ebp
46a366:	c2 08 00             	ret    $0x8
46a369:	55                   	push   %ebp
46a36a:	8b ec                	mov    %esp,%ebp
46a36c:	83 ec 10             	sub    $0x10,%esp
46a36f:	56                   	push   %esi
46a370:	ff 75 08             	push   0x8(%ebp)
46a373:	8b f1                	mov    %ecx,%esi
46a375:	8d 4d f0             	lea    -0x10(%ebp),%ecx
46a378:	e8 c4 db f9 ff       	call   0x407f41
46a37d:	8d 45 f0             	lea    -0x10(%ebp),%eax
46a380:	50                   	push   %eax
46a381:	8d 8e 90 fc ff ff    	lea    -0x370(%esi),%ecx
46a387:	e8 0f 00 00 00       	call   0x46a39b
46a38c:	8d 4d f0             	lea    -0x10(%ebp),%ecx
46a38f:	e8 d0 b6 f9 ff       	call   0x405a64
46a394:	5e                   	pop    %esi
46a395:	8b e5                	mov    %ebp,%esp
46a397:	5d                   	pop    %ebp
46a398:	c2 04 00             	ret    $0x4
46a39b:	55                   	push   %ebp
46a39c:	8b ec                	mov    %esp,%ebp
46a39e:	56                   	push   %esi
46a39f:	8b f1                	mov    %ecx,%esi
46a3a1:	57                   	push   %edi
46a3a2:	33 ff                	xor    %edi,%edi
46a3a4:	6a 0c                	push   $0xc
46a3a6:	39 7e 04             	cmp    %edi,0x4(%esi)
46a3a9:	75 1a                	jne    0x46a3c5
46a3ab:	e8 46 6c fb ff       	call   0x420ff6
46a3b0:	59                   	pop    %ecx
46a3b1:	85 c0                	test   %eax,%eax
46a3b3:	74 0c                	je     0x46a3c1
46a3b5:	ff 75 08             	push   0x8(%ebp)
46a3b8:	8b c8                	mov    %eax,%ecx
46a3ba:	e8 6e f9 ff ff       	call   0x469d2d
46a3bf:	8b f8                	mov    %eax,%edi
46a3c1:	89 3e                	mov    %edi,(%esi)
46a3c3:	eb 22                	jmp    0x46a3e7
46a3c5:	e8 2c 6c fb ff       	call   0x420ff6
46a3ca:	59                   	pop    %ecx
46a3cb:	85 c0                	test   %eax,%eax
46a3cd:	74 0c                	je     0x46a3db
46a3cf:	ff 75 08             	push   0x8(%ebp)
46a3d2:	8b c8                	mov    %eax,%ecx
46a3d4:	e8 54 f9 ff ff       	call   0x469d2d
46a3d9:	8b f8                	mov    %eax,%edi
46a3db:	8b 46 04             	mov    0x4(%esi),%eax
46a3de:	89 47 08             	mov    %eax,0x8(%edi)
46a3e1:	8b 46 04             	mov    0x4(%esi),%eax
46a3e4:	89 78 04             	mov    %edi,0x4(%eax)
46a3e7:	ff 46 08             	incl   0x8(%esi)
46a3ea:	89 7e 04             	mov    %edi,0x4(%esi)
46a3ed:	5f                   	pop    %edi
46a3ee:	5e                   	pop    %esi
46a3ef:	5d                   	pop    %ebp
46a3f0:	c2 04 00             	ret    $0x4
46a3f3:	55                   	push   %ebp
46a3f4:	8b ec                	mov    %esp,%ebp
46a3f6:	56                   	push   %esi
46a3f7:	57                   	push   %edi
46a3f8:	8b 7d 08             	mov    0x8(%ebp),%edi
46a3fb:	8b f1                	mov    %ecx,%esi
46a3fd:	8b 0f                	mov    (%edi),%ecx
46a3ff:	8b 51 08             	mov    0x8(%ecx),%edx
46a402:	8b 41 04             	mov    0x4(%ecx),%eax
46a405:	85 d2                	test   %edx,%edx
46a407:	74 03                	je     0x46a40c
46a409:	89 42 04             	mov    %eax,0x4(%edx)
46a40c:	85 c0                	test   %eax,%eax
46a40e:	74 03                	je     0x46a413
46a410:	89 50 08             	mov    %edx,0x8(%eax)
46a413:	3b 0e                	cmp    (%esi),%ecx
46a415:	75 02                	jne    0x46a419
46a417:	89 06                	mov    %eax,(%esi)
46a419:	3b 4e 04             	cmp    0x4(%esi),%ecx
46a41c:	75 03                	jne    0x46a421
46a41e:	89 56 04             	mov    %edx,0x4(%esi)
46a421:	51                   	push   %ecx
46a422:	e8 a5 66 fb ff       	call   0x420acc
46a427:	83 27 00             	andl   $0x0,(%edi)
46a42a:	ff 4e 08             	decl   0x8(%esi)
46a42d:	5f                   	pop    %edi
46a42e:	5e                   	pop    %esi
46a42f:	5d                   	pop    %ebp
46a430:	c2 04 00             	ret    $0x4
46a433:	55                   	push   %ebp
46a434:	8b ec                	mov    %esp,%ebp
46a436:	ff 4d 0c             	decl   0xc(%ebp)
46a439:	75 19                	jne    0x46a454
46a43b:	83 7d 14 00          	cmpl   $0x0,0x14(%ebp)
46a43f:	74 13                	je     0x46a454
46a441:	ff 75 14             	push   0x14(%ebp)
46a444:	6a 01                	push   $0x1
46a446:	68 67 04 00 00       	push   $0x467
46a44b:	ff 75 08             	push   0x8(%ebp)
46a44e:	ff 15 88 f6 48 00    	call   *0x48f688
46a454:	33 c0                	xor    %eax,%eax
46a456:	5d                   	pop    %ebp
46a457:	c2 10 00             	ret    $0x10
46a45a:	55                   	push   %ebp
46a45b:	8b ec                	mov    %esp,%ebp
46a45d:	b8 00 00 05 00       	mov    $0x50000,%eax
46a462:	e8 29 77 fc ff       	call   0x431b90
46a467:	8d 45 fc             	lea    -0x4(%ebp),%eax
46a46a:	50                   	push   %eax
46a46b:	8d 85 fc ff fd ff    	lea    -0x20004(%ebp),%eax
46a471:	50                   	push   %eax
46a472:	68 ff 7f 00 00       	push   $0x7fff
46a477:	ff 75 08             	push   0x8(%ebp)
46a47a:	ff 15 60 f3 48 00    	call   *0x48f360
46a480:	85 c0                	test   %eax,%eax
46a482:	0f 84 2f 01 00 00    	je     0x46a5b7
46a488:	53                   	push   %ebx
46a489:	8d 85 fc ff fd ff    	lea    -0x20004(%ebp),%eax
46a48f:	50                   	push   %eax
46a490:	8d 85 fc ff fe ff    	lea    -0x10004(%ebp),%eax
46a496:	68 60 a8 4b 00       	push   $0x4ba860
46a49b:	50                   	push   %eax
46a49c:	e8 37 94 fb ff       	call   0x4238d8
46a4a1:	8d 85 fc ff fe ff    	lea    -0x10004(%ebp),%eax
46a4a7:	50                   	push   %eax
46a4a8:	e8 8f 89 fb ff       	call   0x422e3c
46a4ad:	8b d8                	mov    %eax,%ebx
46a4af:	83 c4 10             	add    $0x10,%esp
46a4b2:	66 83 bc 5d fa ff fe 	cmpw   $0x5c,-0x10006(%ebp,%ebx,2)
46a4b9:	ff 5c
46a4bb:	75 15                	jne    0x46a4d2
46a4bd:	66 83 bc 5d f8 ff fe 	cmpw   $0x3a,-0x10008(%ebp,%ebx,2)
46a4c4:	ff 3a
46a4c6:	74 0a                	je     0x46a4d2
46a4c8:	33 c0                	xor    %eax,%eax
46a4ca:	66 89 84 5d fa ff fe 	mov    %ax,-0x10006(%ebp,%ebx,2)
46a4d1:	ff
46a4d2:	57                   	push   %edi
46a4d3:	33 ff                	xor    %edi,%edi
46a4d5:	57                   	push   %edi
46a4d6:	ff 75 0c             	push   0xc(%ebp)
46a4d9:	ff 15 24 f2 48 00    	call   *0x48f224
46a4df:	85 c0                	test   %eax,%eax
46a4e1:	75 09                	jne    0x46a4ec
46a4e3:	38 45 10             	cmp    %al,0x10(%ebp)
46a4e6:	0f 84 bc 00 00 00    	je     0x46a5a8
46a4ec:	57                   	push   %edi
46a4ed:	68 00 00 20 02       	push   $0x2200000
46a4f2:	6a 03                	push   $0x3
46a4f4:	57                   	push   %edi
46a4f5:	57                   	push   %edi
46a4f6:	68 00 00 00 40       	push   $0x40000000
46a4fb:	ff 75 0c             	push   0xc(%ebp)
46a4fe:	ff 15 d4 f1 48 00    	call   *0x48f1d4
46a504:	8b f8                	mov    %eax,%edi
46a506:	83 ff ff             	cmp    $0xffffffff,%edi
46a509:	0f 84 90 00 00 00    	je     0x46a59f
46a50f:	68 fa ff 02 00       	push   $0x2fffa
46a514:	8d 85 00 00 fb ff    	lea    -0x50000(%ebp),%eax
46a51a:	6a 00                	push   $0x0
46a51c:	50                   	push   %eax
46a51d:	e8 fe 8a fb ff       	call   0x423020
46a522:	8d 04 1b             	lea    (%ebx,%ebx,1),%eax
46a525:	c7 85 00 00 fb ff 03 	movl   $0xa0000003,-0x50000(%ebp)
46a52c:	00 00 a0
46a52f:	66 89 85 0a 00 fb ff 	mov    %ax,-0x4fff6(%ebp)
46a536:	8b 85 0a 00 fb ff    	mov    -0x4fff6(%ebp),%eax
46a53c:	83 c0 02             	add    $0x2,%eax
46a53f:	66 89 85 0c 00 fb ff 	mov    %ax,-0x4fff4(%ebp)
46a546:	8d 85 fc ff fe ff    	lea    -0x10004(%ebp),%eax
46a54c:	68 ff 7f 00 00       	push   $0x7fff
46a551:	50                   	push   %eax
46a552:	8d 85 10 00 fb ff    	lea    -0x4fff0(%ebp),%eax
46a558:	50                   	push   %eax
46a559:	e8 90 9d fb ff       	call   0x4242ee
46a55e:	8b 85 0a 00 fb ff    	mov    -0x4fff6(%ebp),%eax
46a564:	8d 4d 08             	lea    0x8(%ebp),%ecx
46a567:	83 c4 18             	add    $0x18,%esp
46a56a:	33 d2                	xor    %edx,%edx
46a56c:	83 c0 0c             	add    $0xc,%eax
46a56f:	66 89 85 04 00 fb ff 	mov    %ax,-0x4fffc(%ebp)
46a576:	0f b7 c0             	movzwl %ax,%eax
46a579:	52                   	push   %edx
46a57a:	51                   	push   %ecx
46a57b:	52                   	push   %edx
46a57c:	52                   	push   %edx
46a57d:	83 c0 08             	add    $0x8,%eax
46a580:	50                   	push   %eax
46a581:	8d 85 00 00 fb ff    	lea    -0x50000(%ebp),%eax
46a587:	50                   	push   %eax
46a588:	68 a4 00 09 00       	push   $0x900a4
46a58d:	57                   	push   %edi
46a58e:	ff 15 54 f2 48 00    	call   *0x48f254
46a594:	57                   	push   %edi
46a595:	85 c0                	test   %eax,%eax
46a597:	75 13                	jne    0x46a5ac
46a599:	ff 15 5c f3 48 00    	call   *0x48f35c
46a59f:	ff 75 0c             	push   0xc(%ebp)
46a5a2:	ff 15 28 f2 48 00    	call   *0x48f228
46a5a8:	33 c0                	xor    %eax,%eax
46a5aa:	eb 09                	jmp    0x46a5b5
46a5ac:	ff 15 5c f3 48 00    	call   *0x48f35c
46a5b2:	33 c0                	xor    %eax,%eax
46a5b4:	40                   	inc    %eax
46a5b5:	5f                   	pop    %edi
46a5b6:	5b                   	pop    %ebx
46a5b7:	8b e5                	mov    %ebp,%esp
46a5b9:	5d                   	pop    %ebp
46a5ba:	c2 0c 00             	ret    $0xc
46a5bd:	55                   	push   %ebp
46a5be:	8b ec                	mov    %esp,%ebp
46a5c0:	83 e4 f8             	and    $0xfffffff8,%esp
46a5c3:	83 ec 34             	sub    $0x34,%esp
46a5c6:	53                   	push   %ebx
46a5c7:	56                   	push   %esi
46a5c8:	57                   	push   %edi
46a5c9:	8b 7d 08             	mov    0x8(%ebp),%edi
46a5cc:	8b 47 04             	mov    0x4(%edi),%eax
46a5cf:	8b 30                	mov    (%eax),%esi
46a5d1:	8b ce                	mov    %esi,%ecx
46a5d3:	e8 bf f3 f9 ff       	call   0x409997
46a5d8:	8b 4e 08             	mov    0x8(%esi),%ecx
46a5db:	8b 41 04             	mov    0x4(%ecx),%eax
46a5de:	8b 19                	mov    (%ecx),%ebx
46a5e0:	89 44 24 34          	mov    %eax,0x34(%esp)
46a5e4:	8b 41 08             	mov    0x8(%ecx),%eax
46a5e7:	89 44 24 38          	mov    %eax,0x38(%esp)
46a5eb:	8b 41 0c             	mov    0xc(%ecx),%eax
46a5ee:	89 44 24 3c          	mov    %eax,0x3c(%esp)
46a5f2:	89 5c 24 30          	mov    %ebx,0x30(%esp)
46a5f6:	ff 00                	incl   (%eax)
46a5f8:	8b 47 04             	mov    0x4(%edi),%eax
46a5fb:	8b 70 04             	mov    0x4(%eax),%esi
46a5fe:	8b ce                	mov    %esi,%ecx
46a600:	e8 92 f3 f9 ff       	call   0x409997
46a605:	8b 4e 08             	mov    0x8(%esi),%ecx
46a608:	8b 01                	mov    (%ecx),%eax
46a60a:	89 44 24 10          	mov    %eax,0x10(%esp)
46a60e:	8b 41 04             	mov    0x4(%ecx),%eax
46a611:	89 44 24 14          	mov    %eax,0x14(%esp)
46a615:	8b 41 08             	mov    0x8(%ecx),%eax
46a618:	89 44 24 18          	mov    %eax,0x18(%esp)
46a61c:	8b 41 0c             	mov    0xc(%ecx),%eax
46a61f:	8d 4c 24 10          	lea    0x10(%esp),%ecx
46a623:	89 44 24 1c          	mov    %eax,0x1c(%esp)
46a627:	ff 00                	incl   (%eax)
46a629:	e8 81 d9 f9 ff       	call   0x407faf
46a62e:	ff 74 24 14          	push   0x14(%esp)
46a632:	ff 74 24 14          	push   0x14(%esp)
46a636:	ff 15 fc f6 48 00    	call   *0x48f6fc
46a63c:	ba 28 a6 4b 00       	mov    $0x4ba628,%edx
46a641:	8d 4c 24 10          	lea    0x10(%esp),%ecx
46a645:	e8 dd 66 fb ff       	call   0x420d27
46a64a:	be 34 a6 4b 00       	mov    $0x4ba634,%esi
46a64f:	84 c0                	test   %al,%al
46a651:	74 0a                	je     0x46a65d
46a653:	56                   	push   %esi
46a654:	8d 4c 24 14          	lea    0x14(%esp),%ecx
46a658:	e8 cf d6 f9 ff       	call   0x407d2c
46a65d:	ba 44 a6 4b 00       	mov    $0x4ba644,%edx
46a662:	8d 4c 24 10          	lea    0x10(%esp),%ecx
46a666:	e8 bc 66 fb ff       	call   0x420d27
46a66b:	84 c0                	test   %al,%al
46a66d:	75 13                	jne    0x46a682
46a66f:	8b d6                	mov    %esi,%edx
46a671:	8d 4c 24 10          	lea    0x10(%esp),%ecx
46a675:	e8 ad 66 fb ff       	call   0x420d27
46a67a:	84 c0                	test   %al,%al
46a67c:	0f 84 d0 00 00 00    	je     0x46a752
46a682:	53                   	push   %ebx
46a683:	ff 15 b8 f2 48 00    	call   *0x48f2b8
46a689:	83 f8 05             	cmp    $0x5,%eax
46a68c:	0f 85 c0 00 00 00    	jne    0x46a752
46a692:	68 54 a3 4b 00       	push   $0x4ba354
46a697:	8d 4c 24 24          	lea    0x24(%esp),%ecx
46a69b:	e8 a1 d8 f9 ff       	call   0x407f41
46a6a0:	8d 44 24 30          	lea    0x30(%esp),%eax