50bac8:	68 89 00 00 00       	push   $0x89
50bacd:	68 b0 ae 62 00       	push   $0x62aeb0
50bad2:	50                   	push   %eax
50bad3:	68 bd 00 00 00       	push   $0xbd
50bad8:	6a 0d                	push   $0xd
50bada:	e8 a1 d4 fc ff       	call   0x4d8f80
50badf:	83 c4 14             	add    $0x14,%esp
50bae2:	85 ff                	test   %edi,%edi
50bae4:	74 04                	je     0x50baea
50bae6:	39 37                	cmp    %esi,(%edi)
50bae8:	74 09                	je     0x50baf3
50baea:	56                   	push   %esi
50baeb:	e8 90 fc fd ff       	call   0x4eb780
50baf0:	83 c4 04             	add    $0x4,%esp
50baf3:	5f                   	pop    %edi
50baf4:	5e                   	pop    %esi
50baf5:	5d                   	pop    %ebp
50baf6:	33 c0                	xor    %eax,%eax
50baf8:	5b                   	pop    %ebx
50baf9:	59                   	pop    %ecx
50bafa:	c3                   	ret
50bafb:	53                   	push   %ebx
50bafc:	55                   	push   %ebp
50bafd:	50                   	push   %eax
50bafe:	e8 cd 72 0c 00       	call   0x5d2dd0
50bb03:	8b 4c 24 1c          	mov    0x1c(%esp),%ecx
50bb07:	0c ff                	or     $0xff,%al
50bb09:	d2 e0                	shl    %cl,%al
50bb0b:	83 c4 0c             	add    $0xc,%esp
50bb0e:	8b 4c 24 20          	mov    0x20(%esp),%ecx
50bb12:	20 44 19 ff          	and    %al,-0x1(%ecx,%ebx,1)
50bb16:	03 eb                	add    %ebx,%ebp
50bb18:	eb 08                	jmp    0x50bb22
50bb1a:	c7 44 24 20 00 00 00 	movl   $0x0,0x20(%esp)
50bb21:	00
50bb22:	68 81 00 00 00       	push   $0x81
50bb27:	68 b0 ae 62 00       	push   $0x62aeb0
50bb2c:	ff 76 08             	push   0x8(%esi)
50bb2f:	89 1e                	mov    %ebx,(%esi)
50bb31:	e8 4a 4c fd ff       	call   0x4e0780
50bb36:	8b 44 24 2c          	mov    0x2c(%esp),%eax
50bb3a:	83 c4 0c             	add    $0xc,%esp
50bb3d:	89 46 08             	mov    %eax,0x8(%esi)
50bb40:	c7 46 04 03 00 00 00 	movl   $0x3,0x4(%esi)
50bb47:	85 ff                	test   %edi,%edi
50bb49:	74 02                	je     0x50bb4d
50bb4b:	89 37                	mov    %esi,(%edi)
50bb4d:	8b 44 24 1c          	mov    0x1c(%esp),%eax
50bb51:	5f                   	pop    %edi
50bb52:	89 28                	mov    %ebp,(%eax)
50bb54:	8b c6                	mov    %esi,%eax
50bb56:	5e                   	pop    %esi
50bb57:	5d                   	pop    %ebp
50bb58:	5b                   	pop    %ebx
50bb59:	59                   	pop    %ecx
50bb5a:	c3                   	ret
50bb5b:	cc                   	int3
50bb5c:	cc                   	int3
50bb5d:	cc                   	int3
50bb5e:	cc                   	int3
50bb5f:	cc                   	int3
50bb60:	8b 4c 24 04          	mov    0x4(%esp),%ecx
50bb64:	85 c9                	test   %ecx,%ecx
50bb66:	75 03                	jne    0x50bb6b
50bb68:	33 c0                	xor    %eax,%eax
50bb6a:	c3                   	ret
50bb6b:	53                   	push   %ebx
50bb6c:	56                   	push   %esi
50bb6d:	8b 31                	mov    (%ecx),%esi
50bb6f:	85 f6                	test   %esi,%esi
50bb71:	7e 79                	jle    0x50bbec
50bb73:	8b 59 0c             	mov    0xc(%ecx),%ebx
50bb76:	f6 c3 08             	test   $0x8,%bl
50bb79:	74 05                	je     0x50bb80
50bb7b:	83 e3 07             	and    $0x7,%ebx
50bb7e:	eb 6e                	jmp    0x50bbee
50bb80:	8b 51 08             	mov    0x8(%ecx),%edx
50bb83:	8d 46 ff             	lea    -0x1(%esi),%eax
50bb86:	03 c2                	add    %edx,%eax
50bb88:	80 38 00             	cmpb   $0x0,(%eax)
50bb8b:	75 06                	jne    0x50bb93
50bb8d:	4e                   	dec    %esi
50bb8e:	48                   	dec    %eax
50bb8f:	85 f6                	test   %esi,%esi
50bb91:	7f f5                	jg     0x50bb88
50bb93:	0f b6 44 32 ff       	movzbl -0x1(%edx,%esi,1),%eax
50bb98:	a8 01                	test   $0x1,%al
50bb9a:	75 50                	jne    0x50bbec
50bb9c:	a8 02                	test   $0x2,%al
50bb9e:	74 07                	je     0x50bba7
50bba0:	bb 01 00 00 00       	mov    $0x1,%ebx
50bba5:	eb 47                	jmp    0x50bbee
50bba7:	a8 04                	test   $0x4,%al
50bba9:	74 07                	je     0x50bbb2
50bbab:	bb 02 00 00 00       	mov    $0x2,%ebx
50bbb0:	eb 3c                	jmp    0x50bbee
50bbb2:	a8 08                	test   $0x8,%al
50bbb4:	74 07                	je     0x50bbbd
50bbb6:	bb 03 00 00 00       	mov    $0x3,%ebx
50bbbb:	eb 31                	jmp    0x50bbee
50bbbd:	a8 10                	test   $0x10,%al
50bbbf:	74 07                	je     0x50bbc8
50bbc1:	bb 04 00 00 00       	mov    $0x4,%ebx
50bbc6:	eb 26                	jmp    0x50bbee
50bbc8:	a8 20                	test   $0x20,%al
50bbca:	74 07                	je     0x50bbd3
50bbcc:	bb 05 00 00 00       	mov    $0x5,%ebx
50bbd1:	eb 1b                	jmp    0x50bbee
50bbd3:	a8 40                	test   $0x40,%al
50bbd5:	74 07                	je     0x50bbde
50bbd7:	bb 06 00 00 00       	mov    $0x6,%ebx
50bbdc:	eb 10                	jmp    0x50bbee
50bbde:	24 80                	and    $0x80,%al
50bbe0:	0f b6 d8             	movzbl %al,%ebx
50bbe3:	f7 db                	neg    %ebx
50bbe5:	1b db                	sbb    %ebx,%ebx
50bbe7:	83 e3 07             	and    $0x7,%ebx
50bbea:	eb 02                	jmp    0x50bbee
50bbec:	33 db                	xor    %ebx,%ebx
50bbee:	55                   	push   %ebp
50bbef:	8b 6c 24 14          	mov    0x14(%esp),%ebp
50bbf3:	8d 46 01             	lea    0x1(%esi),%eax
50bbf6:	89 44 24 10          	mov    %eax,0x10(%esp)
50bbfa:	85 ed                	test   %ebp,%ebp
50bbfc:	74 2b                	je     0x50bc29
50bbfe:	57                   	push   %edi
50bbff:	8b 7d 00             	mov    0x0(%ebp),%edi
50bc02:	88 1f                	mov    %bl,(%edi)
50bc04:	47                   	inc    %edi
50bc05:	85 f6                	test   %esi,%esi
50bc07:	7e 1c                	jle    0x50bc25
50bc09:	56                   	push   %esi
50bc0a:	ff 71 08             	push   0x8(%ecx)
50bc0d:	57                   	push   %edi
50bc0e:	e8 bd 71 0c 00       	call   0x5d2dd0
50bc13:	0c ff                	or     $0xff,%al
50bc15:	03 fe                	add    %esi,%edi
50bc17:	8b cb                	mov    %ebx,%ecx
50bc19:	83 c4 0c             	add    $0xc,%esp
50bc1c:	d2 e0                	shl    %cl,%al
50bc1e:	20 47 ff             	and    %al,-0x1(%edi)
50bc21:	8b 44 24 14          	mov    0x14(%esp),%eax
50bc25:	89 7d 00             	mov    %edi,0x0(%ebp)
50bc28:	5f                   	pop    %edi
50bc29:	5d                   	pop    %ebp
50bc2a:	5e                   	pop    %esi
50bc2b:	5b                   	pop    %ebx
50bc2c:	c3                   	ret
50bc2d:	cc                   	int3
50bc2e:	cc                   	int3
50bc2f:	cc                   	int3
50bc30:	57                   	push   %edi
50bc31:	8b 7c 24 08          	mov    0x8(%esp),%edi
50bc35:	83 3f 04             	cmpl   $0x4,(%edi)
50bc38:	75 36                	jne    0x50bc70
50bc3a:	8b 47 04             	mov    0x4(%edi),%eax
50bc3d:	85 c0                	test   %eax,%eax
50bc3f:	74 2f                	je     0x50bc70
50bc41:	56                   	push   %esi
50bc42:	50                   	push   %eax
50bc43:	e8 08 b6 fd ff       	call   0x4e7250
50bc48:	ff 77 04             	push   0x4(%edi)
50bc4b:	8b f0                	mov    %eax,%esi
50bc4d:	e8 6e 44 fe ff       	call   0x4f00c0
50bc52:	8b 4c 24 1c          	mov    0x1c(%esp),%ecx
50bc56:	8b f8                	mov    %eax,%edi
50bc58:	3b f9                	cmp    %ecx,%edi
50bc5a:	0f 4c cf             	cmovl  %edi,%ecx
50bc5d:	51                   	push   %ecx
50bc5e:	56                   	push   %esi
50bc5f:	ff 74 24 20          	push   0x20(%esp)
50bc63:	e8 68 71 0c 00       	call   0x5d2dd0
50bc68:	83 c4 14             	add    $0x14,%esp
50bc6b:	8b c7                	mov    %edi,%eax
50bc6d:	5e                   	pop    %esi
50bc6e:	5f                   	pop    %edi
50bc6f:	c3                   	ret
50bc70:	6a 24                	push   $0x24
50bc72:	68 24 af 62 00       	push   $0x62af24
50bc77:	6a 6d                	push   $0x6d
50bc79:	68 87 00 00 00       	push   $0x87
50bc7e:	6a 0d                	push   $0xd
50bc80:	e8 fb d2 fc ff       	call   0x4d8f80
50bc85:	83 c4 14             	add    $0x14,%esp
50bc88:	83 c8 ff             	or     $0xffffffff,%eax
50bc8b:	5f                   	pop    %edi
50bc8c:	c3                   	ret
50bc8d:	cc                   	int3
50bc8e:	cc                   	int3
50bc8f:	cc                   	int3
50bc90:	56                   	push   %esi
50bc91:	e8 fa fb fd ff       	call   0x4eb890
50bc96:	8b f0                	mov    %eax,%esi
50bc98:	85 f6                	test   %esi,%esi
50bc9a:	74 1e                	je     0x50bcba
50bc9c:	ff 74 24 10          	push   0x10(%esp)
50bca0:	ff 74 24 10          	push   0x10(%esp)
50bca4:	56                   	push   %esi
50bca5:	e8 76 fc ff ff       	call   0x50b920
50bcaa:	83 c4 0c             	add    $0xc,%esp
50bcad:	56                   	push   %esi
50bcae:	85 c0                	test   %eax,%eax
50bcb0:	75 0c                	jne    0x50bcbe
50bcb2:	e8 c9 fa fd ff       	call   0x4eb780
50bcb7:	83 c4 04             	add    $0x4,%esp
50bcba:	33 c0                	xor    %eax,%eax
50bcbc:	5e                   	pop    %esi
50bcbd:	c3                   	ret
50bcbe:	6a 04                	push   $0x4
50bcc0:	ff 74 24 10          	push   0x10(%esp)
50bcc4:	e8 17 ea ff ff       	call   0x50a6e0
50bcc9:	83 c4 0c             	add    $0xc,%esp
50bccc:	b8 01 00 00 00       	mov    $0x1,%eax
50bcd1:	5e                   	pop    %esi
50bcd2:	c3                   	ret
50bcd3:	cc                   	int3
50bcd4:	cc                   	int3
50bcd5:	cc                   	int3
50bcd6:	cc                   	int3
50bcd7:	cc                   	int3
50bcd8:	cc                   	int3
50bcd9:	cc                   	int3
50bcda:	cc                   	int3
50bcdb:	cc                   	int3
50bcdc:	cc                   	int3
50bcdd:	cc                   	int3
50bcde:	cc                   	int3
50bcdf:	cc                   	int3
50bce0:	53                   	push   %ebx
50bce1:	68 a0 c0 50 00       	push   $0x50c0a0
50bce6:	68 68 68 69 00       	push   $0x696868
50bceb:	33 db                	xor    %ebx,%ebx
50bced:	e8 de 62 fd ff       	call   0x4e1fd0
50bcf2:	83 c4 08             	add    $0x8,%esp
50bcf5:	f7 d8                	neg    %eax
50bcf7:	1b c0                	sbb    %eax,%eax
50bcf9:	85 05 6c 68 69 00    	test   %eax,0x69686c
50bcff:	75 04                	jne    0x50bd05
50bd01:	33 c0                	xor    %eax,%eax
50bd03:	5b                   	pop    %ebx
50bd04:	c3                   	ret
50bd05:	56                   	push   %esi
50bd06:	68 db 00 00 00       	push   $0xdb
50bd0b:	68 3c af 62 00       	push   $0x62af3c
50bd10:	6a 10                	push   $0x10
50bd12:	e8 39 4a fd ff       	call   0x4e0750
50bd17:	8b f0                	mov    %eax,%esi
50bd19:	83 c4 0c             	add    $0xc,%esp
50bd1c:	85 f6                	test   %esi,%esi
50bd1e:	0f 84 92 00 00 00    	je     0x50bdb6
50bd24:	8b 44 24 0c          	mov    0xc(%esp),%eax
50bd28:	8b 4c 24 10          	mov    0x10(%esp),%ecx
50bd2c:	89 46 08             	mov    %eax,0x8(%esi)
50bd2f:	8b c1                	mov    %ecx,%eax
50bd31:	25 00 80 00 00       	and    $0x8000,%eax
50bd36:	81 e1 ff 7f ff ff    	and    $0xffff7fff,%ecx
50bd3c:	57                   	push   %edi
50bd3d:	ff 35 60 68 69 00    	push   0x696860
50bd43:	89 46 04             	mov    %eax,0x4(%esi)
50bd46:	8b 44 24 1c          	mov    0x1c(%esp),%eax
50bd4a:	89 0e                	mov    %ecx,(%esi)
50bd4c:	89 46 0c             	mov    %eax,0xc(%esi)
50bd4f:	e8 6c 62 fd ff       	call   0x4e1fc0
50bd54:	56                   	push   %esi
50bd55:	ff 35 5c 68 69 00    	push   0x69685c
50bd5b:	e8 70 7f fd ff       	call   0x4e3cd0
50bd60:	8b f8                	mov    %eax,%edi
50bd62:	83 c4 0c             	add    $0xc,%esp
50bd65:	85 ff                	test   %edi,%edi
50bd67:	74 60                	je     0x50bdc9
50bd69:	a1 64 68 69 00       	mov    0x696864,%eax
50bd6e:	85 c0                	test   %eax,%eax
50bd70:	74 2b                	je     0x50bd9d
50bd72:	50                   	push   %eax
50bd73:	e8 48 93 fd ff       	call   0x4e50c0
50bd78:	8b 0f                	mov    (%edi),%ecx
50bd7a:	83 c4 04             	add    $0x4,%esp
50bd7d:	3b c1                	cmp    %ecx,%eax
50bd7f:	7e 1c                	jle    0x50bd9d
50bd81:	51                   	push   %ecx
50bd82:	ff 35 64 68 69 00    	push   0x696864
50bd88:	e8 f3 94 fd ff       	call   0x4e5280
50bd8d:	ff 77 0c             	push   0xc(%edi)
50bd90:	ff 37                	push   (%edi)
50bd92:	8b 40 08             	mov    0x8(%eax),%eax
50bd95:	ff 77 08             	push   0x8(%edi)
50bd98:	ff d0                	call   *%eax
50bd9a:	83 c4 14             	add    $0x14,%esp
50bd9d:	68 f5 00 00 00       	push   $0xf5
50bda2:	68 3c af 62 00       	push   $0x62af3c
50bda7:	57                   	push   %edi
50bda8:	e8 d3 49 fd ff       	call   0x4e0780
50bdad:	83 c4 0c             	add    $0xc,%esp
50bdb0:	bb 01 00 00 00       	mov    $0x1,%ebx
50bdb5:	5f                   	pop    %edi
50bdb6:	ff 35 60 68 69 00    	push   0x696860
50bdbc:	e8 7f 62 fd ff       	call   0x4e2040
50bdc1:	83 c4 04             	add    $0x4,%esp
50bdc4:	8b c3                	mov    %ebx,%eax
50bdc6:	5e                   	pop    %esi
50bdc7:	5b                   	pop    %ebx
50bdc8:	c3                   	ret
50bdc9:	ff 35 5c 68 69 00    	push   0x69685c
50bdcf:	e8 6c 7e fd ff       	call   0x4e3c40
50bdd4:	83 c4 04             	add    $0x4,%esp
50bdd7:	85 c0                	test   %eax,%eax
50bdd9:	74 d5                	je     0x50bdb0
50bddb:	68 f9 00 00 00       	push   $0xf9
50bde0:	68 3c af 62 00       	push   $0x62af3c
50bde5:	56                   	push   %esi
50bde6:	e8 95 49 fd ff       	call   0x4e0780
50bdeb:	83 c4 0c             	add    $0xc,%esp
50bdee:	5f                   	pop    %edi
50bdef:	ff 35 60 68 69 00    	push   0x696860
50bdf5:	e8 46 62 fd ff       	call   0x4e2040
50bdfa:	83 c4 04             	add    $0x4,%esp
50bdfd:	8b c3                	mov    %ebx,%eax
50bdff:	5e                   	pop    %esi
50be00:	5b                   	pop    %ebx
50be01:	c3                   	ret
50be02:	cc                   	int3
50be03:	cc                   	int3
50be04:	cc                   	int3
50be05:	cc                   	int3
50be06:	cc                   	int3
50be07:	cc                   	int3
50be08:	cc                   	int3
50be09:	cc                   	int3
50be0a:	cc                   	int3
50be0b:	cc                   	int3
50be0c:	cc                   	int3
50be0d:	cc                   	int3
50be0e:	cc                   	int3
50be0f:	cc                   	int3
50be10:	a1 5c 68 69 00       	mov    0x69685c,%eax
50be15:	85 c0                	test   %eax,%eax
50be17:	0f 84 93 00 00 00    	je     0x50beb0
50be1d:	56                   	push   %esi
50be1e:	8b 74 24 08          	mov    0x8(%esp),%esi
50be22:	57                   	push   %edi
50be23:	50                   	push   %eax
50be24:	89 35 70 68 69 00    	mov    %esi,0x696870
50be2a:	e8 91 7e fd ff       	call   0x4e3cc0
50be2f:	6a 00                	push   $0x0
50be31:	ff 35 5c 68 69 00    	push   0x69685c
50be37:	8b f8                	mov    %eax,%edi
50be39:	e8 02 81 fd ff       	call   0x4e3f40
50be3e:	68 c0 bf 50 00       	push   $0x50bfc0
50be43:	ff 35 5c 68 69 00    	push   0x69685c
50be49:	e8 62 7d fd ff       	call   0x4e3bb0