515843:	83 c4 04             	add    $0x4,%esp
515846:	50                   	push   %eax
515847:	53                   	push   %ebx
515848:	e8 83 a8 fd ff       	call   0x4f00d0
51584d:	83 c4 04             	add    $0x4,%esp
515850:	50                   	push   %eax
515851:	56                   	push   %esi
515852:	ff 74 24 2c          	push   0x2c(%esp)
515856:	55                   	push   %ebp
515857:	e8 14 ef 02 00       	call   0x544770
51585c:	ff 74 24 3c          	push   0x3c(%esp)
515860:	53                   	push   %ebx
515861:	e8 fa a8 fd ff       	call   0x4f0160
515866:	01 74 24 3c          	add    %esi,0x3c(%esp)
51586a:	2b fe                	sub    %esi,%edi
51586c:	03 ee                	add    %esi,%ebp
51586e:	83 c4 24             	add    $0x24,%esp
515871:	3b fe                	cmp    %esi,%edi
515873:	8b c7                	mov    %edi,%eax
515875:	0f 43 c6             	cmovae %esi,%eax
515878:	8b f0                	mov    %eax,%esi
51587a:	85 ff                	test   %edi,%edi
51587c:	75 a2                	jne    0x515820
51587e:	5e                   	pop    %esi
51587f:	5d                   	pop    %ebp
515880:	5b                   	pop    %ebx
515881:	b8 01 00 00 00       	mov    $0x1,%eax
515886:	5f                   	pop    %edi
515887:	c3                   	ret
515888:	b8 01 00 00 00       	mov    $0x1,%eax
51588d:	5f                   	pop    %edi
51588e:	c3                   	ret
51588f:	cc                   	int3
515890:	55                   	push   %ebp
515891:	8b 6c 24 08          	mov    0x8(%esp),%ebp
515895:	57                   	push   %edi
515896:	55                   	push   %ebp
515897:	e8 24 a8 fd ff       	call   0x4f00c0
51589c:	83 c4 04             	add    $0x4,%esp
51589f:	8b 78 04             	mov    0x4(%eax),%edi
5158a2:	8b 44 24 18          	mov    0x18(%esp),%eax
5158a6:	3b c7                	cmp    %edi,%eax
5158a8:	72 46                	jb     0x5158f0
5158aa:	53                   	push   %ebx
5158ab:	2b c7                	sub    %edi,%eax
5158ad:	33 db                	xor    %ebx,%ebx
5158af:	56                   	push   %esi
5158b0:	8b 74 24 1c          	mov    0x1c(%esp),%esi
5158b4:	29 74 24 18          	sub    %esi,0x18(%esp)
5158b8:	89 44 24 20          	mov    %eax,0x20(%esp)
5158bc:	0f 1f 40 00          	nopl   0x0(%eax)
5158c0:	55                   	push   %ebp
5158c1:	e8 8a 19 fd ff       	call   0x4e7250
5158c6:	83 c4 04             	add    $0x4,%esp
5158c9:	50                   	push   %eax
5158ca:	55                   	push   %ebp
5158cb:	e8 00 a8 fd ff       	call   0x4f00d0
5158d0:	83 c4 04             	add    $0x4,%esp
5158d3:	50                   	push   %eax
5158d4:	8b 44 24 20          	mov    0x20(%esp),%eax
5158d8:	03 c6                	add    %esi,%eax
5158da:	50                   	push   %eax
5158db:	56                   	push   %esi
5158dc:	e8 2f ee 02 00       	call   0x544710
5158e1:	03 df                	add    %edi,%ebx
5158e3:	83 c4 10             	add    $0x10,%esp
5158e6:	03 f7                	add    %edi,%esi
5158e8:	3b 5c 24 20          	cmp    0x20(%esp),%ebx
5158ec:	76 d2                	jbe    0x5158c0
5158ee:	5e                   	pop    %esi
5158ef:	5b                   	pop    %ebx
5158f0:	5f                   	pop    %edi
5158f1:	b8 01 00 00 00       	mov    $0x1,%eax
5158f6:	5d                   	pop    %ebp
5158f7:	c3                   	ret
5158f8:	cc                   	int3
5158f9:	cc                   	int3
5158fa:	cc                   	int3
5158fb:	cc                   	int3
5158fc:	cc                   	int3
5158fd:	cc                   	int3
5158fe:	cc                   	int3
5158ff:	cc                   	int3
515900:	b8 04 00 00 00       	mov    $0x4,%eax
515905:	e8 a6 be 0b 00       	call   0x5d17b0
51590a:	53                   	push   %ebx
51590b:	8b 5c 24 14          	mov    0x14(%esp),%ebx
51590f:	55                   	push   %ebp
515910:	8b 6c 24 14          	mov    0x14(%esp),%ebp
515914:	56                   	push   %esi
515915:	8b 74 24 14          	mov    0x14(%esp),%esi
515919:	57                   	push   %edi
51591a:	8b 7c 24 24          	mov    0x24(%esp),%edi
51591e:	81 ff 00 00 00 40    	cmp    $0x40000000,%edi
515924:	72 62                	jb     0x515988
515926:	8b c7                	mov    %edi,%eax
515928:	c1 e8 1e             	shr    $0x1e,%eax
51592b:	89 44 24 10          	mov    %eax,0x10(%esp)
51592f:	90                   	nop
515930:	56                   	push   %esi
515931:	e8 0a a8 fd ff       	call   0x4f0140
515936:	83 c4 04             	add    $0x4,%esp
515939:	89 44 24 24          	mov    %eax,0x24(%esp)
51593d:	8d 44 24 24          	lea    0x24(%esp),%eax
515941:	50                   	push   %eax
515942:	56                   	push   %esi
515943:	e8 d8 a7 fd ff       	call   0x4f0120
515948:	83 c4 04             	add    $0x4,%esp
51594b:	50                   	push   %eax
51594c:	56                   	push   %esi
51594d:	e8 7e a7 fd ff       	call   0x4f00d0
515952:	83 c4 04             	add    $0x4,%esp
515955:	50                   	push   %eax
515956:	68 00 00 00 40       	push   $0x40000000
51595b:	55                   	push   %ebp
51595c:	53                   	push   %ebx
51595d:	e8 3e ee 02 00       	call   0x5447a0
515962:	ff 74 24 3c          	push   0x3c(%esp)
515966:	56                   	push   %esi
515967:	e8 f4 a7 fd ff       	call   0x4f0160
51596c:	83 c4 20             	add    $0x20,%esp
51596f:	81 ef 00 00 00 40    	sub    $0x40000000,%edi
515975:	81 c3 00 00 00 40    	add    $0x40000000,%ebx
51597b:	81 c5 00 00 00 40    	add    $0x40000000,%ebp
515981:	83 6c 24 10 01       	subl   $0x1,0x10(%esp)
515986:	75 a8                	jne    0x515930
515988:	85 ff                	test   %edi,%edi
51598a:	74 3b                	je     0x5159c7
51598c:	56                   	push   %esi
51598d:	e8 ae a7 fd ff       	call   0x4f0140
515992:	83 c4 04             	add    $0x4,%esp
515995:	89 44 24 24          	mov    %eax,0x24(%esp)
515999:	8d 44 24 24          	lea    0x24(%esp),%eax
51599d:	50                   	push   %eax
51599e:	56                   	push   %esi
51599f:	e8 7c a7 fd ff       	call   0x4f0120
5159a4:	83 c4 04             	add    $0x4,%esp
5159a7:	50                   	push   %eax
5159a8:	56                   	push   %esi
5159a9:	e8 22 a7 fd ff       	call   0x4f00d0
5159ae:	83 c4 04             	add    $0x4,%esp
5159b1:	50                   	push   %eax
5159b2:	57                   	push   %edi
5159b3:	55                   	push   %ebp
5159b4:	53                   	push   %ebx
5159b5:	e8 e6 ed 02 00       	call   0x5447a0
5159ba:	ff 74 24 3c          	push   0x3c(%esp)
5159be:	56                   	push   %esi
5159bf:	e8 9c a7 fd ff       	call   0x4f0160
5159c4:	83 c4 20             	add    $0x20,%esp
5159c7:	5f                   	pop    %edi
5159c8:	5e                   	pop    %esi
5159c9:	5d                   	pop    %ebp
5159ca:	b8 01 00 00 00       	mov    $0x1,%eax
5159cf:	5b                   	pop    %ebx
5159d0:	59                   	pop    %ecx
5159d1:	c3                   	ret
5159d2:	cc                   	int3
5159d3:	cc                   	int3
5159d4:	cc                   	int3
5159d5:	cc                   	int3
5159d6:	cc                   	int3
5159d7:	cc                   	int3
5159d8:	cc                   	int3
5159d9:	cc                   	int3
5159da:	cc                   	int3
5159db:	cc                   	int3
5159dc:	cc                   	int3
5159dd:	cc                   	int3
5159de:	cc                   	int3
5159df:	cc                   	int3
5159e0:	b8 0c 13 63 00       	mov    $0x63130c,%eax
5159e5:	c3                   	ret
5159e6:	cc                   	int3
5159e7:	cc                   	int3
5159e8:	cc                   	int3
5159e9:	cc                   	int3
5159ea:	cc                   	int3
5159eb:	cc                   	int3
5159ec:	cc                   	int3
5159ed:	cc                   	int3
5159ee:	cc                   	int3
5159ef:	cc                   	int3
5159f0:	b8 40 13 63 00       	mov    $0x631340,%eax
5159f5:	c3                   	ret
5159f6:	cc                   	int3
5159f7:	cc                   	int3
5159f8:	cc                   	int3
5159f9:	cc                   	int3
5159fa:	cc                   	int3
5159fb:	cc                   	int3
5159fc:	cc                   	int3
5159fd:	cc                   	int3
5159fe:	cc                   	int3
5159ff:	cc                   	int3
515a00:	b8 a8 13 63 00       	mov    $0x6313a8,%eax
515a05:	c3                   	ret
515a06:	cc                   	int3
515a07:	cc                   	int3
515a08:	cc                   	int3
515a09:	cc                   	int3
515a0a:	cc                   	int3
515a0b:	cc                   	int3
515a0c:	cc                   	int3
515a0d:	cc                   	int3
515a0e:	cc                   	int3
515a0f:	cc                   	int3
515a10:	b8 74 13 63 00       	mov    $0x631374,%eax
515a15:	c3                   	ret
515a16:	cc                   	int3
515a17:	cc                   	int3
515a18:	cc                   	int3
515a19:	cc                   	int3
515a1a:	cc                   	int3
515a1b:	cc                   	int3
515a1c:	cc                   	int3
515a1d:	cc                   	int3
515a1e:	cc                   	int3
515a1f:	cc                   	int3
515a20:	ff 74 24 04          	push   0x4(%esp)
515a24:	e8 a7 a6 fd ff       	call   0x4f00d0
515a29:	50                   	push   %eax
515a2a:	ff 74 24 10          	push   0x10(%esp)
515a2e:	e8 3d 05 03 00       	call   0x545f70
515a33:	83 c4 0c             	add    $0xc,%esp
515a36:	b8 01 00 00 00       	mov    $0x1,%eax
515a3b:	c3                   	ret
515a3c:	cc                   	int3
515a3d:	cc                   	int3
515a3e:	cc                   	int3
515a3f:	cc                   	int3
515a40:	b8 04 00 00 00       	mov    $0x4,%eax
515a45:	e8 66 bd 0b 00       	call   0x5d17b0
515a4a:	8b 4c 24 08          	mov    0x8(%esp),%ecx
515a4e:	53                   	push   %ebx
515a4f:	8b 5c 24 10          	mov    0x10(%esp),%ebx
515a53:	55                   	push   %ebp
515a54:	8b 6c 24 1c          	mov    0x1c(%esp),%ebp
515a58:	56                   	push   %esi
515a59:	57                   	push   %edi
515a5a:	8b 7c 24 20          	mov    0x20(%esp),%edi
515a5e:	81 fd 00 00 00 40    	cmp    $0x40000000,%ebp
515a64:	72 7d                	jb     0x515ae3
515a66:	8b c5                	mov    %ebp,%eax
515a68:	c1 e8 1e             	shr    $0x1e,%eax
515a6b:	89 44 24 10          	mov    %eax,0x10(%esp)
515a6f:	90                   	nop
515a70:	51                   	push   %ecx
515a71:	e8 da 17 fd ff       	call   0x4e7250
515a76:	ff 74 24 1c          	push   0x1c(%esp)
515a7a:	8b f0                	mov    %eax,%esi
515a7c:	e8 9f a6 fd ff       	call   0x4f0120
515a81:	ff 74 24 20          	push   0x20(%esp)
515a85:	89 44 24 30          	mov    %eax,0x30(%esp)
515a89:	e8 42 a6 fd ff       	call   0x4f00d0
515a8e:	83 c4 0c             	add    $0xc,%esp
515a91:	85 f6                	test   %esi,%esi
515a93:	74 18                	je     0x515aad
515a95:	68 a0 53 54 00       	push   $0x5453a0
515a9a:	ff 74 24 28          	push   0x28(%esp)
515a9e:	50                   	push   %eax
515a9f:	68 00 00 00 40       	push   $0x40000000
515aa4:	53                   	push   %ebx
515aa5:	57                   	push   %edi
515aa6:	e8 e5 d3 fd ff       	call   0x4f2e90
515aab:	eb 16                	jmp    0x515ac3
515aad:	68 d0 47 54 00       	push   $0x5447d0
515ab2:	ff 74 24 28          	push   0x28(%esp)
515ab6:	50                   	push   %eax
515ab7:	68 00 00 00 40       	push   $0x40000000
515abc:	53                   	push   %ebx
515abd:	57                   	push   %edi
515abe:	e8 cd d0 fd ff       	call   0x4f2b90
515ac3:	8b 4c 24 30          	mov    0x30(%esp),%ecx
515ac7:	83 c4 18             	add    $0x18,%esp
515aca:	81 ed 00 00 00 40    	sub    $0x40000000,%ebp
515ad0:	81 c7 00 00 00 40    	add    $0x40000000,%edi
515ad6:	81 c3 00 00 00 40    	add    $0x40000000,%ebx
515adc:	83 6c 24 10 01       	subl   $0x1,0x10(%esp)
515ae1:	75 8d                	jne    0x515a70
515ae3:	85 ed                	test   %ebp,%ebp
515ae5:	74 5a                	je     0x515b41
515ae7:	51                   	push   %ecx
515ae8:	e8 63 17 fd ff       	call   0x4e7250
515aed:	ff 74 24 1c          	push   0x1c(%esp)
515af1:	8b f0                	mov    %eax,%esi
515af3:	e8 28 a6 fd ff       	call   0x4f0120
515af8:	ff 74 24 20          	push   0x20(%esp)
515afc:	89 44 24 30          	mov    %eax,0x30(%esp)
515b00:	e8 cb a5 fd ff       	call   0x4f00d0
515b05:	83 c4 0c             	add    $0xc,%esp
515b08:	85 f6                	test   %esi,%esi
515b0a:	74 20                	je     0x515b2c
515b0c:	68 a0 53 54 00       	push   $0x5453a0
515b11:	ff 74 24 28          	push   0x28(%esp)
515b15:	50                   	push   %eax
515b16:	55                   	push   %ebp
515b17:	53                   	push   %ebx
515b18:	57                   	push   %edi
515b19:	e8 72 d3 fd ff       	call   0x4f2e90
515b1e:	83 c4 18             	add    $0x18,%esp
515b21:	b8 01 00 00 00       	mov    $0x1,%eax
515b26:	5f                   	pop    %edi
515b27:	5e                   	pop    %esi
515b28:	5d                   	pop    %ebp
515b29:	5b                   	pop    %ebx
515b2a:	59                   	pop    %ecx
515b2b:	c3                   	ret
515b2c:	68 d0 47 54 00       	push   $0x5447d0
515b31:	ff 74 24 28          	push   0x28(%esp)
515b35:	50                   	push   %eax
515b36:	55                   	push   %ebp
515b37:	53                   	push   %ebx
515b38:	57                   	push   %edi
515b39:	e8 52 d0 fd ff       	call   0x4f2b90
515b3e:	83 c4 18             	add    $0x18,%esp
515b41:	5f                   	pop    %edi
515b42:	5e                   	pop    %esi
515b43:	5d                   	pop    %ebp
515b44:	b8 01 00 00 00       	mov    $0x1,%eax
515b49:	5b                   	pop    %ebx
515b4a:	59                   	pop    %ecx
515b4b:	c3                   	ret
515b4c:	cc                   	int3
515b4d:	cc                   	int3
515b4e:	cc                   	int3
515b4f:	cc                   	int3
515b50:	55                   	push   %ebp
515b51:	8b 6c 24 14          	mov    0x14(%esp),%ebp
515b55:	85 ed                	test   %ebp,%ebp
515b57:	0f 84 8a 00 00 00    	je     0x515be7
515b5d:	56                   	push   %esi
515b5e:	b8 00 00 00 40       	mov    $0x40000000,%eax
515b63:	8b f5                	mov    %ebp,%esi
515b65:	57                   	push   %edi
515b66:	8b 7c 24 10          	mov    0x10(%esp),%edi
515b6a:	3b e8                	cmp    %eax,%ebp
515b6c:	53                   	push   %ebx
515b6d:	0f 43 f0             	cmovae %eax,%esi
515b70:	3b ee                	cmp    %esi,%ebp
515b72:	72 69                	jb     0x515bdd
515b74:	57                   	push   %edi
515b75:	e8 c6 a5 fd ff       	call   0x4f0140
515b7a:	57                   	push   %edi
515b7b:	89 44 24 28          	mov    %eax,0x28(%esp)
515b7f:	e8 cc 16 fd ff       	call   0x4e7250
515b84:	57                   	push   %edi
515b85:	8b d8                	mov    %eax,%ebx
515b87:	e8 94 a5 fd ff       	call   0x4f0120
515b8c:	ff 74 24 20          	push   0x20(%esp)