5163cc:	eb 39                	jmp    0x516407
5163ce:	8d 45 e0             	lea    -0x20(%ebp),%eax
5163d1:	50                   	push   %eax
5163d2:	8b cf                	mov    %edi,%ecx
5163d4:	49                   	dec    %ecx
5163d5:	8b 45 fc             	mov    -0x4(%ebp),%eax
5163d8:	8b 40 24             	mov    0x24(%eax),%eax
5163db:	8b 80 68 01 00 00    	mov    0x168(%eax),%eax
5163e1:	8b 00                	mov    (%eax),%eax
5163e3:	8b 55 e8             	mov    -0x18(%ebp),%edx
5163e6:	e8 8d e9 ee ff       	call   0x404d78
5163eb:	eb 1a                	jmp    0x516407
5163ed:	8b 45 c4             	mov    -0x3c(%ebp),%eax
5163f0:	50                   	push   %eax
5163f1:	8b 45 b4             	mov    -0x4c(%ebp),%eax
5163f4:	50                   	push   %eax
5163f5:	8d 45 e0             	lea    -0x20(%ebp),%eax
5163f8:	50                   	push   %eax
5163f9:	8b 4d f0             	mov    -0x10(%ebp),%ecx
5163fc:	8b 55 e4             	mov    -0x1c(%ebp),%edx
5163ff:	8b 45 fc             	mov    -0x4(%ebp),%eax
516402:	e8 19 f7 ff ff       	call   0x515b20
516407:	66 83 7d a8 00       	cmpw   $0x0,-0x58(%ebp)
51640c:	76 2b                	jbe    0x516439
51640e:	83 7d cc 00          	cmpl   $0x0,-0x34(%ebp)
516412:	74 25                	je     0x516439
516414:	80 3d e8 04 69 00 00 	cmpb   $0x0,0x6904e8
51641b:	74 1c                	je     0x516439
51641d:	8d 95 54 ff ff ff    	lea    -0xac(%ebp),%edx
516423:	8b 45 e0             	mov    -0x20(%ebp),%eax
516426:	ff 55 cc             	call   *-0x34(%ebp)
516429:	8b 95 54 ff ff ff    	mov    -0xac(%ebp),%edx
51642f:	8d 45 e0             	lea    -0x20(%ebp),%eax
516432:	e8 c9 e4 ee ff       	call   0x404900
516437:	eb 1c                	jmp    0x516455
516439:	8d 95 50 ff ff ff    	lea    -0xb0(%ebp),%edx
51643f:	8b 45 e0             	mov    -0x20(%ebp),%eax
516442:	e8 4d fb ff ff       	call   0x515f94
516447:	8b 95 50 ff ff ff    	mov    -0xb0(%ebp),%edx
51644d:	8d 45 e0             	lea    -0x20(%ebp),%eax
516450:	e8 ab e4 ee ff       	call   0x404900
516455:	8d 45 dc             	lea    -0x24(%ebp),%eax
516458:	8b 55 b0             	mov    -0x50(%ebp),%edx
51645b:	e8 a0 e4 ee ff       	call   0x404900
516460:	8b c3                	mov    %ebx,%eax
516462:	2d 86 92 00 00       	sub    $0x9286,%eax
516467:	75 68                	jne    0x5164d1
516469:	8d 85 48 ff ff ff    	lea    -0xb8(%ebp),%eax
51646f:	50                   	push   %eax
516470:	8b cf                	mov    %edi,%ecx
516472:	83 e9 09             	sub    $0x9,%ecx
516475:	ba 09 00 00 00       	mov    $0x9,%edx
51647a:	8b 45 e4             	mov    -0x1c(%ebp),%eax
51647d:	e8 f6 e8 ee ff       	call   0x404d78
516482:	8b 85 48 ff ff ff    	mov    -0xb8(%ebp),%eax
516488:	8d 95 4c ff ff ff    	lea    -0xb4(%ebp),%edx
51648e:	e8 15 2f ef ff       	call   0x4093a8
516493:	8b 95 4c ff ff ff    	mov    -0xb4(%ebp),%edx
516499:	8b 45 fc             	mov    -0x4(%ebp),%eax
51649c:	05 b0 00 00 00       	add    $0xb0,%eax
5164a1:	e8 16 e4 ee ff       	call   0x4048bc
5164a6:	8d 45 e0             	lea    -0x20(%ebp),%eax
5164a9:	8b 55 fc             	mov    -0x4(%ebp),%edx
5164ac:	8b 92 b0 00 00 00    	mov    0xb0(%edx),%edx
5164b2:	e8 49 e4 ee ff       	call   0x404900
5164b7:	8b 45 fc             	mov    -0x4(%ebp),%eax
5164ba:	8b 55 e8             	mov    -0x18(%ebp),%edx
5164bd:	89 90 b4 00 00 00    	mov    %edx,0xb4(%eax)
5164c3:	8b c7                	mov    %edi,%eax
5164c5:	83 e8 09             	sub    $0x9,%eax
5164c8:	8b 55 fc             	mov    -0x4(%ebp),%edx
5164cb:	89 82 b8 00 00 00    	mov    %eax,0xb8(%edx)
5164d1:	68 78 6a 51 00       	push   $0x516a78
5164d6:	8d 85 44 ff ff ff    	lea    -0xbc(%ebp),%eax
5164dc:	50                   	push   %eax
5164dd:	68 ec 6a 51 00       	push   $0x516aec
5164e2:	8d 8d 3c ff ff ff    	lea    -0xc4(%ebp),%ecx
5164e8:	ba 04 00 00 00       	mov    $0x4,%edx
5164ed:	8b c3                	mov    %ebx,%eax
5164ef:	e8 34 31 ef ff       	call   0x409628
5164f4:	ff b5 3c ff ff ff    	push   -0xc4(%ebp)
5164fa:	68 fc 6a 51 00       	push   $0x516afc
5164ff:	8d 85 40 ff ff ff    	lea    -0xc0(%ebp),%eax
516505:	ba 03 00 00 00       	mov    $0x3,%edx
51650a:	e8 d1 e6 ee ff       	call   0x404be0
51650f:	8b 95 40 ff ff ff    	mov    -0xc0(%ebp),%edx
516515:	83 3d 00 0b 69 00 00 	cmpl   $0x0,0x690b00
51651c:	0f 9f c0             	setg   %al
51651f:	33 c9                	xor    %ecx,%ecx
516521:	e8 ae ed ff ff       	call   0x5152d4
516526:	ff b5 44 ff ff ff    	push   -0xbc(%ebp)
51652c:	ff 75 dc             	push   -0x24(%ebp)
51652f:	ff 35 e4 04 69 00    	push   0x6904e4
516535:	ff 75 e0             	push   -0x20(%ebp)
516538:	8d 85 38 ff ff ff    	lea    -0xc8(%ebp),%eax
51653e:	50                   	push   %eax
51653f:	68 08 6b 51 00       	push   $0x516b08
516544:	8d 95 30 ff ff ff    	lea    -0xd0(%ebp),%edx
51654a:	8b c7                	mov    %edi,%eax
51654c:	e8 73 30 ef ff       	call   0x4095c4
516551:	ff b5 30 ff ff ff    	push   -0xd0(%ebp)
516557:	68 1c 6b 51 00       	push   $0x516b1c
51655c:	8d 85 34 ff ff ff    	lea    -0xcc(%ebp),%eax
516562:	ba 03 00 00 00       	mov    $0x3,%edx
516567:	e8 74 e6 ee ff       	call   0x404be0
51656c:	8b 95 34 ff ff ff    	mov    -0xcc(%ebp),%edx
516572:	83 3d 00 0b 69 00 00 	cmpl   $0x0,0x690b00
516579:	0f 9f c0             	setg   %al
51657c:	33 c9                	xor    %ecx,%ecx
51657e:	e8 51 ed ff ff       	call   0x5152d4
516583:	ff b5 38 ff ff ff    	push   -0xc8(%ebp)
516589:	8d 85 2c ff ff ff    	lea    -0xd4(%ebp),%eax
51658f:	50                   	push   %eax
516590:	68 28 6b 51 00       	push   $0x516b28
516595:	8d 95 24 ff ff ff    	lea    -0xdc(%ebp),%edx
51659b:	8b 45 e8             	mov    -0x18(%ebp),%eax
51659e:	e8 21 30 ef ff       	call   0x4095c4
5165a3:	ff b5 24 ff ff ff    	push   -0xdc(%ebp)
5165a9:	68 1c 6b 51 00       	push   $0x516b1c
5165ae:	8d 85 28 ff ff ff    	lea    -0xd8(%ebp),%eax
5165b4:	ba 03 00 00 00       	mov    $0x3,%edx
5165b9:	e8 22 e6 ee ff       	call   0x404be0
5165be:	8b 95 28 ff ff ff    	mov    -0xd8(%ebp),%edx
5165c4:	83 3d 00 0b 69 00 00 	cmpl   $0x0,0x690b00
5165cb:	0f 9f c0             	setg   %al
5165ce:	33 c9                	xor    %ecx,%ecx
5165d0:	e8 ff ec ff ff       	call   0x5152d4
5165d5:	ff b5 2c ff ff ff    	push   -0xd4(%ebp)
5165db:	8d 45 d4             	lea    -0x2c(%ebp),%eax
5165de:	ba 07 00 00 00       	mov    $0x7,%edx
5165e3:	e8 f8 e5 ee ff       	call   0x404be0
5165e8:	83 7d 0c 04          	cmpl   $0x4,0xc(%ebp)
5165ec:	75 12                	jne    0x516600
5165ee:	8b 45 fc             	mov    -0x4(%ebp),%eax
5165f1:	05 c8 00 00 00       	add    $0xc8,%eax
5165f6:	8b 55 d4             	mov    -0x2c(%ebp),%edx
5165f9:	e8 2a e5 ee ff       	call   0x404b28
5165fe:	eb 10                	jmp    0x516610
516600:	8b 45 fc             	mov    -0x4(%ebp),%eax
516603:	05 e8 00 00 00       	add    $0xe8,%eax
516608:	8b 55 d4             	mov    -0x2c(%ebp),%edx
51660b:	e8 18 e5 ee ff       	call   0x404b28
516610:	81 fb 25 88 00 00    	cmp    $0x8825,%ebx
516616:	7f 5c                	jg     0x516674
516618:	0f 84 fa 00 00 00    	je     0x516718
51661e:	81 fb 10 01 00 00    	cmp    $0x110,%ebx
516624:	7f 30                	jg     0x516656
516626:	0f 84 64 01 00 00    	je     0x516790
51662c:	81 eb 00 01 00 00    	sub    $0x100,%ebx
516632:	0f 84 ce 02 00 00    	je     0x516906
516638:	4b                   	dec    %ebx
516639:	0f 84 9d 02 00 00    	je     0x5168dc
51663f:	83 eb 02             	sub    $0x2,%ebx
516642:	0f 84 e8 02 00 00    	je     0x516930
516648:	83 eb 0c             	sub    $0xc,%ebx
51664b:	0f 84 14 01 00 00    	je     0x516765
516651:	e9 fc 02 00 00       	jmp    0x516952
516656:	81 eb 32 01 00 00    	sub    $0x132,%ebx
51665c:	0f 84 84 01 00 00    	je     0x5167e6
516662:	83 eb 18             	sub    $0x18,%ebx
516665:	74 64                	je     0x5166cb
516667:	81 eb 1f 86 00 00    	sub    $0x861f,%ebx
51666d:	74 5c                	je     0x5166cb
51666f:	e9 de 02 00 00       	jmp    0x516952
516674:	81 fb 7c 92 00 00    	cmp    $0x927c,%ebx
51667a:	7f 33                	jg     0x5166af
51667c:	0f 84 e3 01 00 00    	je     0x516865
516682:	81 eb 00 90 00 00    	sub    $0x9000,%ebx
516688:	0f 84 2d 01 00 00    	je     0x5167bb
51668e:	83 eb 03             	sub    $0x3,%ebx
516691:	0f 84 86 01 00 00    	je     0x51681d
516697:	4b                   	dec    %ebx
516698:	0f 84 b6 01 00 00    	je     0x516854
51669e:	81 eb 05 02 00 00    	sub    $0x205,%ebx
5166a4:	0f 84 14 02 00 00    	je     0x5168be
5166aa:	e9 a3 02 00 00       	jmp    0x516952
5166af:	81 eb 02 a0 00 00    	sub    $0xa002,%ebx
5166b5:	0f 84 4b 02 00 00    	je     0x516906
5166bb:	4b                   	dec    %ebx
5166bc:	0f 84 1a 02 00 00    	je     0x5168dc
5166c2:	83 eb 02             	sub    $0x2,%ebx
5166c5:	0f 85 87 02 00 00    	jne    0x516952
5166cb:	33 d2                	xor    %edx,%edx
5166cd:	55                   	push   %ebp
5166ce:	68 09 67 51 00       	push   $0x516709
5166d3:	64 ff 32             	push   %fs:(%edx)
5166d6:	64 89 22             	mov    %esp,%fs:(%edx)
5166d9:	8b 55 e8             	mov    -0x18(%ebp),%edx
5166dc:	8b 45 fc             	mov    -0x4(%ebp),%eax
5166df:	e8 2c 1a 00 00       	call   0x518110
5166e4:	03 45 f4             	add    -0xc(%ebp),%eax
5166e7:	8b 55 10             	mov    0x10(%ebp),%edx
5166ea:	52                   	push   %edx
5166eb:	6a 01                	push   $0x1
5166ed:	6a 00                	push   $0x0
5166ef:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5166f2:	8b d0                	mov    %eax,%edx
5166f4:	8b 45 fc             	mov    -0x4(%ebp),%eax
5166f7:	e8 40 fa ff ff       	call   0x51613c
5166fc:	33 c0                	xor    %eax,%eax
5166fe:	5a                   	pop    %edx
5166ff:	59                   	pop    %ecx
516700:	59                   	pop    %ecx
516701:	64 89 10             	mov    %edx,%fs:(%eax)
516704:	e9 49 02 00 00       	jmp    0x516952
516709:	e9 4a d8 ee ff       	jmp    0x403f58
51670e:	e8 ad db ee ff       	call   0x4042c0
516713:	e9 3a 02 00 00       	jmp    0x516952
516718:	33 d2                	xor    %edx,%edx
51671a:	55                   	push   %ebp
51671b:	68 56 67 51 00       	push   $0x516756
516720:	64 ff 32             	push   %fs:(%edx)
516723:	64 89 22             	mov    %esp,%fs:(%edx)
516726:	8b 55 e8             	mov    -0x18(%ebp),%edx
516729:	8b 45 fc             	mov    -0x4(%ebp),%eax
51672c:	e8 df 19 00 00       	call   0x518110
516731:	03 45 f4             	add    -0xc(%ebp),%eax
516734:	8b 55 10             	mov    0x10(%ebp),%edx
516737:	52                   	push   %edx
516738:	6a 02                	push   $0x2
51673a:	6a 00                	push   $0x0
51673c:	8b 4d f4             	mov    -0xc(%ebp),%ecx
51673f:	8b d0                	mov    %eax,%edx
516741:	8b 45 fc             	mov    -0x4(%ebp),%eax
516744:	e8 f3 f9 ff ff       	call   0x51613c
516749:	33 c0                	xor    %eax,%eax
51674b:	5a                   	pop    %edx
51674c:	59                   	pop    %ecx
51674d:	59                   	pop    %ecx
51674e:	64 89 10             	mov    %edx,%fs:(%eax)
516751:	e9 fc 01 00 00       	jmp    0x516952
516756:	e9 fd d7 ee ff       	jmp    0x403f58
51675b:	e8 60 db ee ff       	call   0x4042c0
516760:	e9 ed 01 00 00       	jmp    0x516952
516765:	8d 85 24 fe ff ff    	lea    -0x1dc(%ebp),%eax
51676b:	8b 55 e0             	mov    -0x20(%ebp),%edx
51676e:	b9 ff 00 00 00       	mov    $0xff,%ecx
516773:	e8 84 e3 ee ff       	call   0x404afc
516778:	8d 95 24 fe ff ff    	lea    -0x1dc(%ebp),%edx
51677e:	8b 45 fc             	mov    -0x4(%ebp),%eax
516781:	83 c0 2f             	add    $0x2f,%eax
516784:	b1 20                	mov    $0x20,%cl
516786:	e8 a5 c9 ee ff       	call   0x403130
51678b:	e9 c2 01 00 00       	jmp    0x516952
516790:	8d 85 24 fe ff ff    	lea    -0x1dc(%ebp),%eax
516796:	8b 55 e0             	mov    -0x20(%ebp),%edx
516799:	b9 ff 00 00 00       	mov    $0xff,%ecx
51679e:	e8 59 e3 ee ff       	call   0x404afc
5167a3:	8d 95 24 fe ff ff    	lea    -0x1dc(%ebp),%edx
5167a9:	8b 45 fc             	mov    -0x4(%ebp),%eax
5167ac:	83 c0 50             	add    $0x50,%eax
5167af:	b1 28                	mov    $0x28,%cl
5167b1:	e8 7a c9 ee ff       	call   0x403130
5167b6:	e9 97 01 00 00       	jmp    0x516952
5167bb:	8d 85 24 fe ff ff    	lea    -0x1dc(%ebp),%eax
5167c1:	8b 55 e4             	mov    -0x1c(%ebp),%edx
5167c4:	b9 ff 00 00 00       	mov    $0xff,%ecx
5167c9:	e8 2e e3 ee ff       	call   0x404afc
5167ce:	8d 95 24 fe ff ff    	lea    -0x1dc(%ebp),%edx
5167d4:	8b 45 fc             	mov    -0x4(%ebp),%eax
5167d7:	83 c0 28             	add    $0x28,%eax
5167da:	b1 06                	mov    $0x6,%cl
5167dc:	e8 4f c9 ee ff       	call   0x403130
5167e1:	e9 6c 01 00 00       	jmp    0x516952
5167e6:	8b 45 fc             	mov    -0x4(%ebp),%eax
5167e9:	8b 55 e8             	mov    -0x18(%ebp),%edx
5167ec:	89 90 bc 00 00 00    	mov    %edx,0xbc(%eax)
5167f2:	8d 85 24 fe ff ff    	lea    -0x1dc(%ebp),%eax
5167f8:	8b 55 e0             	mov    -0x20(%ebp),%edx
5167fb:	b9 ff 00 00 00       	mov    $0xff,%ecx
516800:	e8 f7 e2 ee ff       	call   0x404afc
516805:	8d 95 24 fe ff ff    	lea    -0x1dc(%ebp),%edx
51680b:	8b 45 fc             	mov    -0x4(%ebp),%eax
51680e:	83 c0 79             	add    $0x79,%eax
516811:	b1 14                	mov    $0x14,%cl
516813:	e8 18 c9 ee ff       	call   0x403130
516818:	e9 35 01 00 00       	jmp    0x516952
51681d:	8b 45 fc             	mov    -0x4(%ebp),%eax
516820:	8b 55 e8             	mov    -0x18(%ebp),%edx
516823:	89 90 c0 00 00 00    	mov    %edx,0xc0(%eax)
516829:	8d 85 24 fe ff ff    	lea    -0x1dc(%ebp),%eax
51682f:	8b 55 e0             	mov    -0x20(%ebp),%edx
516832:	b9 ff 00 00 00       	mov    $0xff,%ecx
516837:	e8 c0 e2 ee ff       	call   0x404afc
51683c:	8d 95 24 fe ff ff    	lea    -0x1dc(%ebp),%edx
516842:	8b 45 fc             	mov    -0x4(%ebp),%eax
516845:	83 c0 79             	add    $0x79,%eax
516848:	b1 14                	mov    $0x14,%cl
51684a:	e8 e1 c8 ee ff       	call   0x403130
51684f:	e9 fe 00 00 00       	jmp    0x516952
516854:	8b 45 fc             	mov    -0x4(%ebp),%eax
516857:	8b 55 e8             	mov    -0x18(%ebp),%edx
51685a:	89 90 c4 00 00 00    	mov    %edx,0xc4(%eax)
516860:	e9 ed 00 00 00       	jmp    0x516952
516865:	8b 45 fc             	mov    -0x4(%ebp),%eax
516868:	05 a8 00 00 00       	add    $0xa8,%eax
51686d:	8b 55 e4             	mov    -0x1c(%ebp),%edx
516870:	e8 47 e0 ee ff       	call   0x4048bc
516875:	8b 45 fc             	mov    -0x4(%ebp),%eax
516878:	8b 55 e8             	mov    -0x18(%ebp),%edx
51687b:	89 90 f8 00 00 00    	mov    %edx,0xf8(%eax)
516881:	8b 45 fc             	mov    -0x4(%ebp),%eax
516884:	50                   	push   %eax
516885:	8b 45 fc             	mov    -0x4(%ebp),%eax
516888:	8a 88 ac 00 00 00    	mov    0xac(%eax),%cl
51688e:	b2 01                	mov    $0x1,%dl
516890:	a1 cc df 50 00       	mov    0x50dfcc,%eax
516895:	e8 3e a4 ff ff       	call   0x510cd8
51689a:	89 45 d8             	mov    %eax,-0x28(%ebp)
51689d:	8d 55 fc             	lea    -0x4(%ebp),%edx
5168a0:	8b 45 d8             	mov    -0x28(%ebp),%eax
5168a3:	e8 88 a4 ff ff       	call   0x510d30
5168a8:	8b 55 fc             	mov    -0x4(%ebp),%edx
5168ab:	88 82 f0 00 00 00    	mov    %al,0xf0(%edx)
5168b1:	8d 45 d8             	lea    -0x28(%ebp),%eax
5168b4:	e8 a3 81 ef ff       	call   0x40ea5c
5168b9:	e9 94 00 00 00       	jmp    0x516952
5168be:	8b 4d f0             	mov    -0x10(%ebp),%ecx
5168c1:	8b 55 e4             	mov    -0x1c(%ebp),%edx
5168c4:	8b 45 fc             	mov    -0x4(%ebp),%eax
5168c7:	e8 68 f5 ff ff       	call   0x515e34
5168cc:	e8 ef c3 ee ff       	call   0x402cc0
5168d1:	8b 55 fc             	mov    -0x4(%ebp),%edx
5168d4:	89 82 a0 00 00 00    	mov    %eax,0xa0(%edx)
5168da:	eb 76                	jmp    0x516952
5168dc:	83 c6 08             	add    $0x8,%esi
5168df:	8b 45 fc             	mov    -0x4(%ebp),%eax
5168e2:	89 b0 98 00 00 00    	mov    %esi,0x98(%eax)
5168e8:	8b 4d f0             	mov    -0x10(%ebp),%ecx
5168eb:	8b 55 e4             	mov    -0x1c(%ebp),%edx
5168ee:	8b 45 fc             	mov    -0x4(%ebp),%eax
5168f1:	e8 3e f5 ff ff       	call   0x515e34
5168f6:	e8 c5 c3 ee ff       	call   0x402cc0
5168fb:	8b 55 fc             	mov    -0x4(%ebp),%edx
5168fe:	89 82 90 00 00 00    	mov    %eax,0x90(%edx)
516904:	eb 4c                	jmp    0x516952
516906:	83 c6 08             	add    $0x8,%esi
516909:	8b 45 fc             	mov    -0x4(%ebp),%eax
51690c:	89 b0 9c 00 00 00    	mov    %esi,0x9c(%eax)
516912:	8b 4d f0             	mov    -0x10(%ebp),%ecx
516915:	8b 55 e4             	mov    -0x1c(%ebp),%edx
516918:	8b 45 fc             	mov    -0x4(%ebp),%eax
51691b:	e8 14 f5 ff ff       	call   0x515e34
516920:	e8 9b c3 ee ff       	call   0x402cc0
516925:	8b 55 fc             	mov    -0x4(%ebp),%edx
516928:	89 82 94 00 00 00    	mov    %eax,0x94(%edx)
51692e:	eb 22                	jmp    0x516952
516930:	83 7d 0c 04          	cmpl   $0x4,0xc(%ebp)
516934:	75 1c                	jne    0x516952
516936:	8b 4d f0             	mov    -0x10(%ebp),%ecx