5a731e:	c3                   	ret
5a731f:	cc                   	int3
5a7320:	56                   	push   %esi
5a7321:	8b 74 24 08          	mov    0x8(%esp),%esi
5a7325:	81 3e 00 01 00 00    	cmpl   $0x100,(%esi)
5a732b:	75 4d                	jne    0x5a737a
5a732d:	8b 86 80 00 00 00    	mov    0x80(%esi),%eax
5a7333:	6a 02                	push   $0x2
5a7335:	66 ff 80 0a 01 00 00 	incw   0x10a(%eax)
5a733c:	8b 86 80 00 00 00    	mov    0x80(%esi),%eax
5a7342:	0f b7 80 08 01 00 00 	movzwl 0x108(%eax),%eax
5a7349:	50                   	push   %eax
5a734a:	ff 74 24 14          	push   0x14(%esp)
5a734e:	e8 4d cc ff ff       	call   0x5a3fa0
5a7353:	83 c4 0c             	add    $0xc,%esp
5a7356:	85 c0                	test   %eax,%eax
5a7358:	75 20                	jne    0x5a737a
5a735a:	68 96 03 00 00       	push   $0x396
5a735f:	68 50 80 66 00       	push   $0x668050
5a7364:	6a 44                	push   $0x44
5a7366:	68 73 01 00 00       	push   $0x173
5a736b:	6a 50                	push   $0x50
5a736d:	56                   	push   %esi
5a736e:	e8 9d 7d fe ff       	call   0x58f110
5a7373:	83 c4 18             	add    $0x18,%esp
5a7376:	33 c0                	xor    %eax,%eax
5a7378:	5e                   	pop    %esi
5a7379:	c3                   	ret
5a737a:	b8 01 00 00 00       	mov    $0x1,%eax
5a737f:	5e                   	pop    %esi
5a7380:	c3                   	ret
5a7381:	cc                   	int3
5a7382:	cc                   	int3
5a7383:	cc                   	int3
5a7384:	cc                   	int3
5a7385:	cc                   	int3
5a7386:	cc                   	int3
5a7387:	cc                   	int3
5a7388:	cc                   	int3
5a7389:	cc                   	int3
5a738a:	cc                   	int3
5a738b:	cc                   	int3
5a738c:	cc                   	int3
5a738d:	cc                   	int3
5a738e:	cc                   	int3
5a738f:	cc                   	int3
5a7390:	b8 04 00 00 00       	mov    $0x4,%eax
5a7395:	e8 16 a4 02 00       	call   0x5d17b0
5a739a:	53                   	push   %ebx
5a739b:	55                   	push   %ebp
5a739c:	56                   	push   %esi
5a739d:	8b 74 24 14          	mov    0x14(%esp),%esi
5a73a1:	57                   	push   %edi
5a73a2:	6a 2c                	push   $0x2c
5a73a4:	6a 00                	push   $0x0
5a73a6:	8b ae 80 00 00 00    	mov    0x80(%esi),%ebp
5a73ac:	81 c5 4c 01 00 00    	add    $0x14c,%ebp
5a73b2:	55                   	push   %ebp
5a73b3:	e8 b8 b8 02 00       	call   0x5d2c70
5a73b8:	8d 44 24 1c          	lea    0x1c(%esp),%eax
5a73bc:	50                   	push   %eax
5a73bd:	8d 44 24 28          	lea    0x28(%esp),%eax
5a73c1:	50                   	push   %eax
5a73c2:	56                   	push   %esi
5a73c3:	e8 78 01 00 00       	call   0x5a7540
5a73c8:	83 c4 18             	add    $0x18,%esp
5a73cb:	85 c0                	test   %eax,%eax
5a73cd:	75 2a                	jne    0x5a73f9
5a73cf:	90                   	nop
5a73d0:	8b 44 24 18          	mov    0x18(%esp),%eax
5a73d4:	83 f8 fe             	cmp    $0xfffffffe,%eax
5a73d7:	74 09                	je     0x5a73e2
5a73d9:	83 f8 fd             	cmp    $0xfffffffd,%eax
5a73dc:	0f 85 fb 00 00 00    	jne    0x5a74dd
5a73e2:	8d 44 24 10          	lea    0x10(%esp),%eax
5a73e6:	50                   	push   %eax
5a73e7:	8d 44 24 1c          	lea    0x1c(%esp),%eax
5a73eb:	50                   	push   %eax
5a73ec:	56                   	push   %esi
5a73ed:	e8 4e 01 00 00       	call   0x5a7540
5a73f2:	83 c4 0c             	add    $0xc,%esp
5a73f5:	85 c0                	test   %eax,%eax
5a73f7:	74 d7                	je     0x5a73d0
5a73f9:	8b 46 7c             	mov    0x7c(%esi),%eax
5a73fc:	8b 54 24 1c          	mov    0x1c(%esp),%edx
5a7400:	8b 80 0c 02 00 00    	mov    0x20c(%eax),%eax
5a7406:	89 02                	mov    %eax,(%edx)
5a7408:	8b 46 6c             	mov    0x6c(%esi),%eax
5a740b:	8b 4e 74             	mov    0x74(%esi),%ecx
5a740e:	8b 78 04             	mov    0x4(%eax),%edi
5a7411:	8b 44 24 20          	mov    0x20(%esp),%eax
5a7415:	89 08                	mov    %ecx,(%eax)
5a7417:	81 3a 01 01 00 00    	cmpl   $0x101,(%edx)
5a741d:	75 2e                	jne    0x5a744d
5a741f:	8b 86 84 00 00 00    	mov    0x84(%esi),%eax
5a7425:	85 c0                	test   %eax,%eax
5a7427:	0f 84 fc 00 00 00    	je     0x5a7529
5a742d:	ff b6 88 00 00 00    	push   0x88(%esi)
5a7433:	56                   	push   %esi
5a7434:	6a 01                	push   $0x1
5a7436:	57                   	push   %edi
5a7437:	6a 14                	push   $0x14
5a7439:	ff 36                	push   (%esi)
5a743b:	6a 00                	push   $0x0
5a743d:	ff d0                	call   *%eax
5a743f:	83 c4 1c             	add    $0x1c,%esp
5a7442:	b8 01 00 00 00       	mov    $0x1,%eax
5a7447:	5f                   	pop    %edi
5a7448:	5e                   	pop    %esi
5a7449:	5d                   	pop    %ebp
5a744a:	5b                   	pop    %ebx
5a744b:	59                   	pop    %ecx
5a744c:	c3                   	ret
5a744d:	8b 5d 04             	mov    0x4(%ebp),%ebx
5a7450:	8b d3                	mov    %ebx,%edx
5a7452:	0f b6 45 00          	movzbl 0x0(%ebp),%eax
5a7456:	8b cb                	mov    %ebx,%ecx
5a7458:	88 07                	mov    %al,(%edi)
5a745a:	c1 ea 10             	shr    $0x10,%edx
5a745d:	c1 e9 08             	shr    $0x8,%ecx
5a7460:	88 57 01             	mov    %dl,0x1(%edi)
5a7463:	88 4f 02             	mov    %cl,0x2(%edi)
5a7466:	88 5f 03             	mov    %bl,0x3(%edi)
5a7469:	0f b6 45 09          	movzbl 0x9(%ebp),%eax
5a746d:	88 47 04             	mov    %al,0x4(%edi)
5a7470:	0f b6 45 08          	movzbl 0x8(%ebp),%eax
5a7474:	88 47 05             	mov    %al,0x5(%edi)
5a7477:	66 c7 47 06 00 00    	movw   $0x0,0x6(%edi)
5a747d:	c6 47 08 00          	movb   $0x0,0x8(%edi)
5a7481:	83 c7 09             	add    $0x9,%edi
5a7484:	89 5c 24 18          	mov    %ebx,0x18(%esp)
5a7488:	88 17                	mov    %dl,(%edi)
5a748a:	88 4f 01             	mov    %cl,0x1(%edi)
5a748d:	88 5f 02             	mov    %bl,0x2(%edi)
5a7490:	8b 06                	mov    (%esi),%eax
5a7492:	3d 00 01 00 00       	cmp    $0x100,%eax
5a7497:	74 07                	je     0x5a74a0
5a7499:	83 c3 0c             	add    $0xc,%ebx
5a749c:	89 5c 24 18          	mov    %ebx,0x18(%esp)
5a74a0:	3d 00 01 00 00       	cmp    $0x100,%eax
5a74a5:	bb f7 ff ff ff       	mov    $0xfffffff7,%ebx
5a74aa:	8b 44 24 1c          	mov    0x1c(%esp),%eax
5a74ae:	b9 03 00 00 00       	mov    $0x3,%ecx
5a74b3:	0f 44 d9             	cmove  %ecx,%ebx
5a74b6:	03 df                	add    %edi,%ebx
5a74b8:	83 38 14             	cmpl   $0x14,(%eax)
5a74bb:	75 0d                	jne    0x5a74ca
5a74bd:	56                   	push   %esi
5a74be:	e8 5d c8 fe ff       	call   0x593d20
5a74c3:	83 c4 04             	add    $0x4,%esp
5a74c6:	85 c0                	test   %eax,%eax
5a74c8:	74 13                	je     0x5a74dd
5a74ca:	8b 7c 24 18          	mov    0x18(%esp),%edi
5a74ce:	57                   	push   %edi
5a74cf:	53                   	push   %ebx
5a74d0:	56                   	push   %esi
5a74d1:	e8 9a bf ff ff       	call   0x5a3470
5a74d6:	83 c4 0c             	add    $0xc,%esp
5a74d9:	85 c0                	test   %eax,%eax
5a74db:	75 08                	jne    0x5a74e5
5a74dd:	5f                   	pop    %edi
5a74de:	5e                   	pop    %esi
5a74df:	5d                   	pop    %ebp
5a74e0:	33 c0                	xor    %eax,%eax
5a74e2:	5b                   	pop    %ebx
5a74e3:	59                   	pop    %ecx
5a74e4:	c3                   	ret
5a74e5:	8b 86 84 00 00 00    	mov    0x84(%esi),%eax
5a74eb:	85 c0                	test   %eax,%eax
5a74ed:	74 14                	je     0x5a7503
5a74ef:	ff b6 88 00 00 00    	push   0x88(%esi)
5a74f5:	56                   	push   %esi
5a74f6:	57                   	push   %edi
5a74f7:	53                   	push   %ebx
5a74f8:	6a 16                	push   $0x16
5a74fa:	ff 36                	push   (%esi)
5a74fc:	6a 00                	push   $0x0
5a74fe:	ff d0                	call   *%eax
5a7500:	83 c4 1c             	add    $0x1c,%esp
5a7503:	6a 2c                	push   $0x2c
5a7505:	6a 00                	push   $0x0
5a7507:	55                   	push   %ebp
5a7508:	e8 63 b7 02 00       	call   0x5d2c70
5a750d:	8b 86 80 00 00 00    	mov    0x80(%esi),%eax
5a7513:	83 c4 0c             	add    $0xc,%esp
5a7516:	66 ff 80 0c 01 00 00 	incw   0x10c(%eax)
5a751d:	8b 46 6c             	mov    0x6c(%esi),%eax
5a7520:	8b 40 04             	mov    0x4(%eax),%eax
5a7523:	83 c0 0c             	add    $0xc,%eax
5a7526:	89 46 70             	mov    %eax,0x70(%esi)
5a7529:	5f                   	pop    %edi
5a752a:	5e                   	pop    %esi
5a752b:	5d                   	pop    %ebp
5a752c:	b8 01 00 00 00       	mov    $0x1,%eax
5a7531:	5b                   	pop    %ebx
5a7532:	59                   	pop    %ecx
5a7533:	c3                   	ret
5a7534:	cc                   	int3
5a7535:	cc                   	int3
5a7536:	cc                   	int3
5a7537:	cc                   	int3
5a7538:	cc                   	int3
5a7539:	cc                   	int3
5a753a:	cc                   	int3
5a753b:	cc                   	int3
5a753c:	cc                   	int3
5a753d:	cc                   	int3
5a753e:	cc                   	int3
5a753f:	cc                   	int3
5a7540:	b8 50 00 00 00       	mov    $0x50,%eax
5a7545:	e8 66 a2 02 00       	call   0x5d17b0
5a754a:	a1 c0 14 69 00       	mov    0x6914c0,%eax
5a754f:	33 c4                	xor    %esp,%eax
5a7551:	89 44 24 4c          	mov    %eax,0x4c(%esp)
5a7555:	8b 4c 24 58          	mov    0x58(%esp),%ecx
5a7559:	8b 44 24 5c          	mov    0x5c(%esp),%eax
5a755d:	53                   	push   %ebx
5a755e:	55                   	push   %ebp
5a755f:	56                   	push   %esi
5a7560:	57                   	push   %edi
5a7561:	8b 7c 24 64          	mov    0x64(%esp),%edi
5a7565:	89 4c 24 1c          	mov    %ecx,0x1c(%esp)
5a7569:	89 44 24 14          	mov    %eax,0x14(%esp)
5a756d:	c7 01 00 00 00 00    	movl   $0x0,(%ecx)
5a7573:	8b 87 80 00 00 00    	mov    0x80(%edi),%eax
5a7579:	ff b0 10 01 00 00    	push   0x110(%eax)
5a757f:	e8 3c 8b f4 ff       	call   0x4f00c0
5a7584:	8b d8                	mov    %eax,%ebx
5a7586:	83 c4 04             	add    $0x4,%esp
5a7589:	85 db                	test   %ebx,%ebx
5a758b:	0f 84 98 00 00 00    	je     0x5a7629
5a7591:	8b 87 80 00 00 00    	mov    0x80(%edi),%eax
5a7597:	8b 73 08             	mov    0x8(%ebx),%esi
5a759a:	0f b7 88 0c 01 00 00 	movzwl 0x10c(%eax),%ecx
5a75a1:	0f b7 56 08          	movzwl 0x8(%esi),%edx
5a75a5:	8b c1                	mov    %ecx,%eax
5a75a7:	89 44 24 18          	mov    %eax,0x18(%esp)
5a75ab:	8b ea                	mov    %edx,%ebp
5a75ad:	8b 87 80 00 00 00    	mov    0x80(%edi),%eax
5a75b3:	66 3b d1             	cmp    %cx,%dx
5a75b6:	73 60                	jae    0x5a7618
5a75b8:	ff b0 10 01 00 00    	push   0x110(%eax)
5a75be:	e8 7d 11 01 00       	call   0x5b8740
5a75c3:	83 c4 04             	add    $0x4,%esp
5a75c6:	83 7e 14 00          	cmpl   $0x0,0x14(%esi)
5a75ca:	74 13                	je     0x5a75df
5a75cc:	ff 76 18             	push   0x18(%esi)
5a75cf:	e8 1c 4e f3 ff       	call   0x4dc3f0
5a75d4:	ff 76 1c             	push   0x1c(%esi)
5a75d7:	e8 14 3b f7 ff       	call   0x51b0f0
5a75dc:	83 c4 08             	add    $0x8,%esp
5a75df:	6a 67                	push   $0x67
5a75e1:	68 50 80 66 00       	push   $0x668050
5a75e6:	ff 76 2c             	push   0x2c(%esi)
5a75e9:	e8 92 91 f3 ff       	call   0x4e0780
5a75ee:	6a 68                	push   $0x68
5a75f0:	68 50 80 66 00       	push   $0x668050
5a75f5:	ff 76 30             	push   0x30(%esi)
5a75f8:	e8 83 91 f3 ff       	call   0x4e0780
5a75fd:	6a 69                	push   $0x69
5a75ff:	68 50 80 66 00       	push   $0x668050
5a7604:	56                   	push   %esi
5a7605:	e8 76 91 f3 ff       	call   0x4e0780
5a760a:	53                   	push   %ebx
5a760b:	e8 20 0f 01 00       	call   0x5b8530
5a7610:	83 c4 28             	add    $0x28,%esp
5a7613:	e9 5b ff ff ff       	jmp    0x5a7573
5a7618:	83 7e 30 00          	cmpl   $0x0,0x30(%esi)
5a761c:	75 0b                	jne    0x5a7629
5a761e:	66 39 6c 24 18       	cmp    %bp,0x18(%esp)
5a7623:	0f 84 7f 01 00 00    	je     0x5a77a8
5a7629:	8b 47 04             	mov    0x4(%edi),%eax
5a762c:	8d 4c 24 10          	lea    0x10(%esp),%ecx
5a7630:	51                   	push   %ecx
5a7631:	6a 00                	push   $0x0
5a7633:	6a 0c                	push   $0xc
5a7635:	8b 40 38             	mov    0x38(%eax),%eax
5a7638:	8d 4c 24 5c          	lea    0x5c(%esp),%ecx
5a763c:	51                   	push   %ecx
5a763d:	8d 4c 24 30          	lea    0x30(%esp),%ecx
5a7641:	51                   	push   %ecx
5a7642:	6a 16                	push   $0x16
5a7644:	57                   	push   %edi
5a7645:	ff d0                	call   *%eax
5a7647:	83 c4 1c             	add    $0x1c,%esp
5a764a:	85 c0                	test   %eax,%eax
5a764c:	0f 8e c9 03 00 00    	jle    0x5a7a1b
5a7652:	83 7c 24 20 14       	cmpl   $0x14,0x20(%esp)
5a7657:	0f 84 2b 03 00 00    	je     0x5a7988
5a765d:	83 7c 24 10 0c       	cmpl   $0xc,0x10(%esp)
5a7662:	0f 85 0f 03 00 00    	jne    0x5a7977
5a7668:	6a 2c                	push   $0x2c
5a766a:	8d 44 24 28          	lea    0x28(%esp),%eax
5a766e:	6a 00                	push   $0x0
5a7670:	50                   	push   %eax
5a7671:	e8 fa b5 02 00       	call   0x5d2c70
5a7676:	8a 44 24 5c          	mov    0x5c(%esp),%al
5a767a:	0f b6 5c 24 5d       	movzbl 0x5d(%esp),%ebx
5a767f:	0f b6 4c 24 60       	movzbl 0x60(%esp),%ecx
5a7684:	0f b6 6c 24 62       	movzbl 0x62(%esp),%ebp
5a7689:	0f b6 74 24 65       	movzbl 0x65(%esp),%esi
5a768e:	88 44 24 30          	mov    %al,0x30(%esp)
5a7692:	0f b6 44 24 5e       	movzbl 0x5e(%esp),%eax
5a7697:	c1 e3 08             	shl    $0x8,%ebx
5a769a:	0b d8                	or     %eax,%ebx
5a769c:	66 c1 e1 08          	shl    $0x8,%cx
5a76a0:	0f b6 44 24 5f       	movzbl 0x5f(%esp),%eax
5a76a5:	c1 e3 08             	shl    $0x8,%ebx
5a76a8:	0b d8                	or     %eax,%ebx
5a76aa:	c1 e5 08             	shl    $0x8,%ebp
5a76ad:	0f b6 44 24 61       	movzbl 0x61(%esp),%eax
5a76b2:	66 0b c8             	or     %ax,%cx
5a76b5:	c1 e6 08             	shl    $0x8,%esi
5a76b8:	0f b7 c1             	movzwl %cx,%eax
5a76bb:	89 44 24 24          	mov    %eax,0x24(%esp)
5a76bf:	0f b6 44 24 63       	movzbl 0x63(%esp),%eax
5a76c4:	0b e8                	or     %eax,%ebp
5a76c6:	89 5c 24 34          	mov    %ebx,0x34(%esp)
5a76ca:	0f b6 44 24 64       	movzbl 0x64(%esp),%eax
5a76cf:	c1 e5 08             	shl    $0x8,%ebp
5a76d2:	0b e8                	or     %eax,%ebp
5a76d4:	66 89 4c 24 38       	mov    %cx,0x38(%esp)
5a76d9:	0f b6 44 24 66       	movzbl 0x66(%esp),%eax
5a76de:	0b f0                	or     %eax,%esi
5a76e0:	89 6c 24 3c          	mov    %ebp,0x3c(%esp)
5a76e4:	0f b6 44 24 67       	movzbl 0x67(%esp),%eax
5a76e9:	c1 e6 08             	shl    $0x8,%esi
5a76ec:	0b f0                	or     %eax,%esi
5a76ee:	8d 87 50 06 00 00    	lea    0x650(%edi),%eax
5a76f4:	50                   	push   %eax
5a76f5:	89 74 24 44          	mov    %esi,0x44(%esp)
5a76f9:	e8 72 9c fe ff       	call   0x591370
5a76fe:	83 c4 10             	add    $0x10,%esp
5a7701:	3b f0                	cmp    %eax,%esi
5a7703:	0f 87 67 02 00 00    	ja     0x5a7970
5a7709:	8b 87 80 00 00 00    	mov    0x80(%edi),%eax
5a770f:	8b 4c 24 18          	mov    0x18(%esp),%ecx
5a7713:	66 3b 88 0c 01 00 00 	cmp    0x10c(%eax),%cx
5a771a:	0f 85 27 02 00 00    	jne    0x5a7947
5a7720:	85 f6                	test   %esi,%esi
5a7722:	74 08                	je     0x5a772c
5a7724:	3b f3                	cmp    %ebx,%esi
5a7726:	0f 82 4f 01 00 00    	jb     0x5a787b
5a772c:	83 7f 1c 00          	cmpl   $0x0,0x1c(%edi)
5a7730:	0f 85 82 01 00 00    	jne    0x5a78b8
5a7736:	83 b8 58 01 00 00 00 	cmpl   $0x0,0x158(%eax)
5a773d:	0f 85 75 01 00 00    	jne    0x5a78b8
5a7743:	83 7f 40 01          	cmpl   $0x1,0x40(%edi)
5a7747:	0f 84 6b 01 00 00    	je     0x5a78b8
5a774d:	80 7c 24 50 00       	cmpb   $0x0,0x50(%esp)