4ff977:	7e 68                	jle    0x4ff9e1
4ff979:	8b 54 24 10          	mov    0x10(%esp),%edx
4ff97d:	8b c7                	mov    %edi,%eax
4ff97f:	c1 e8 1f             	shr    $0x1f,%eax
4ff982:	f7 df                	neg    %edi
4ff984:	89 44 24 14          	mov    %eax,0x14(%esp)
4ff988:	8d 43 0b             	lea    0xb(%ebx),%eax
4ff98b:	8b 5c 24 14          	mov    0x14(%esp),%ebx
4ff98f:	8b e8                	mov    %eax,%ebp
4ff991:	89 44 24 24          	mov    %eax,0x24(%esp)
4ff995:	8b c7                	mov    %edi,%eax
4ff997:	47                   	inc    %edi
4ff998:	c1 e8 1f             	shr    $0x1f,%eax
4ff99b:	32 c3                	xor    %bl,%al
4ff99d:	0a c3                	or     %bl,%al
4ff99f:	8b 5c 24 2c          	mov    0x2c(%esp),%ebx
4ff9a3:	f6 d8                	neg    %al
4ff9a5:	0f b6 c8             	movzbl %al,%ecx
4ff9a8:	0f b6 c2             	movzbl %dl,%eax
4ff9ab:	23 c8                	and    %eax,%ecx
4ff9ad:	89 4c 24 24          	mov    %ecx,0x24(%esp)
4ff9b1:	f7 d1                	not    %ecx
4ff9b3:	89 4c 24 20          	mov    %ecx,0x20(%esp)
4ff9b7:	8b 44 24 24          	mov    0x24(%esp),%eax
4ff9bb:	8a 0c 2e             	mov    (%esi,%ebp,1),%cl
4ff9be:	22 c8                	and    %al,%cl
4ff9c0:	8b 44 24 20          	mov    0x20(%esp),%eax
4ff9c4:	22 04 1e             	and    (%esi,%ebx,1),%al
4ff9c7:	0a c1                	or     %cl,%al
4ff9c9:	8b cb                	mov    %ebx,%ecx
4ff9cb:	8b 5c 24 14          	mov    0x14(%esp),%ebx
4ff9cf:	88 04 0e             	mov    %al,(%esi,%ecx,1)
4ff9d2:	46                   	inc    %esi
4ff9d3:	3b 74 24 30          	cmp    0x30(%esp),%esi
4ff9d7:	7c bc                	jl     0x4ff995
4ff9d9:	8b 5c 24 18          	mov    0x18(%esp),%ebx
4ff9dd:	8b 6c 24 3c          	mov    0x3c(%esp),%ebp
4ff9e1:	68 fa 00 00 00       	push   $0xfa
4ff9e6:	68 40 9c 62 00       	push   $0x629c40
4ff9eb:	55                   	push   %ebp
4ff9ec:	53                   	push   %ebx
4ff9ed:	e8 4e 0e fe ff       	call   0x4e0840
4ff9f2:	68 fb 00 00 00       	push   $0xfb
4ff9f7:	68 40 9c 62 00       	push   $0x629c40
4ff9fc:	68 9f 00 00 00       	push   $0x9f
4ffa01:	6a 71                	push   $0x71
4ffa03:	6a 04                	push   $0x4
4ffa05:	e8 76 95 fd ff       	call   0x4d8f80
4ffa0a:	8b 5c 24 34          	mov    0x34(%esp),%ebx
4ffa0e:	8b c3                	mov    %ebx,%eax
4ffa10:	83 e0 01             	and    $0x1,%eax
4ffa13:	50                   	push   %eax
4ffa14:	e8 47 97 fd ff       	call   0x4d9160
4ffa19:	83 c4 28             	add    $0x28,%esp
4ffa1c:	89 5c 24 30          	mov    %ebx,0x30(%esp)
4ffa20:	f7 d3                	not    %ebx
4ffa22:	89 5c 24 24          	mov    %ebx,0x24(%esp)
4ffa26:	8b 4c 24 30          	mov    0x30(%esp),%ecx
4ffa2a:	23 4c 24 1c          	and    0x1c(%esp),%ecx
4ffa2e:	8b 44 24 24          	mov    0x24(%esp),%eax
4ffa32:	5f                   	pop    %edi
4ffa33:	5b                   	pop    %ebx
4ffa34:	5d                   	pop    %ebp
4ffa35:	0b c1                	or     %ecx,%eax
4ffa37:	5e                   	pop    %esi
4ffa38:	83 c4 18             	add    $0x18,%esp
4ffa3b:	c3                   	ret
4ffa3c:	68 ae 00 00 00       	push   $0xae
4ffa41:	68 40 9c 62 00       	push   $0x629c40
4ffa46:	68 9f 00 00 00       	push   $0x9f
4ffa4b:	6a 71                	push   $0x71
4ffa4d:	6a 04                	push   $0x4
4ffa4f:	e8 2c 95 fd ff       	call   0x4d8f80
4ffa54:	83 c4 14             	add    $0x14,%esp
4ffa57:	83 c8 ff             	or     $0xffffffff,%eax
4ffa5a:	5d                   	pop    %ebp
4ffa5b:	5e                   	pop    %esi
4ffa5c:	83 c4 18             	add    $0x18,%esp
4ffa5f:	c3                   	ret
4ffa60:	83 c8 ff             	or     $0xffffffff,%eax
4ffa63:	5e                   	pop    %esi
4ffa64:	83 c4 18             	add    $0x18,%esp
4ffa67:	c3                   	ret
4ffa68:	cc                   	int3
4ffa69:	cc                   	int3
4ffa6a:	cc                   	int3
4ffa6b:	cc                   	int3
4ffa6c:	cc                   	int3
4ffa6d:	cc                   	int3
4ffa6e:	cc                   	int3
4ffa6f:	cc                   	int3
4ffa70:	b8 60 00 00 00       	mov    $0x60,%eax
4ffa75:	e8 36 1d 0d 00       	call   0x5d17b0
4ffa7a:	a1 c0 14 69 00       	mov    0x6914c0,%eax
4ffa7f:	33 c4                	xor    %esp,%eax
4ffa81:	89 44 24 5c          	mov    %eax,0x5c(%esp)
4ffa85:	8b 44 24 64          	mov    0x64(%esp),%eax
4ffa89:	53                   	push   %ebx
4ffa8a:	8b 5c 24 78          	mov    0x78(%esp),%ebx
4ffa8e:	56                   	push   %esi
4ffa8f:	89 44 24 0c          	mov    %eax,0xc(%esp)
4ffa93:	8b 44 24 74          	mov    0x74(%esp),%eax
4ffa97:	57                   	push   %edi
4ffa98:	89 44 24 1c          	mov    %eax,0x1c(%esp)
4ffa9c:	33 ff                	xor    %edi,%edi
4ffa9e:	89 5c 24 18          	mov    %ebx,0x18(%esp)
4ffaa2:	e8 69 b6 01 00       	call   0x51b110
4ffaa7:	8b f0                	mov    %eax,%esi
4ffaa9:	c7 44 24 14 ff ff ff 	movl   $0xffffffff,0x14(%esp)
4ffab0:	ff
4ffab1:	85 f6                	test   %esi,%esi
4ffab3:	0f 84 ee 00 00 00    	je     0x4ffba7
4ffab9:	53                   	push   %ebx
4ffaba:	e8 01 0e ff ff       	call   0x4f08c0
4ffabf:	83 c4 04             	add    $0x4,%esp
4ffac2:	89 44 24 20          	mov    %eax,0x20(%esp)
4ffac6:	85 c0                	test   %eax,%eax
4ffac8:	0f 88 d9 00 00 00    	js     0x4ffba7
4fface:	55                   	push   %ebp
4ffacf:	8b 6c 24 78          	mov    0x78(%esp),%ebp
4ffad3:	33 db                	xor    %ebx,%ebx
4ffad5:	85 ed                	test   %ebp,%ebp
4ffad7:	0f 8e c1 00 00 00    	jle    0x4ffb9e
4ffadd:	0f 1f 00             	nopl   (%eax)
4ffae0:	8b c3                	mov    %ebx,%eax
4ffae2:	88 5c 24 13          	mov    %bl,0x13(%esp)
4ffae6:	c1 f8 18             	sar    $0x18,%eax
4ffae9:	88 44 24 10          	mov    %al,0x10(%esp)
4ffaed:	8b c3                	mov    %ebx,%eax
4ffaef:	c1 f8 10             	sar    $0x10,%eax
4ffaf2:	88 44 24 11          	mov    %al,0x11(%esp)
4ffaf6:	8b c3                	mov    %ebx,%eax
4ffaf8:	6a 00                	push   $0x0
4ffafa:	ff 74 24 20          	push   0x20(%esp)
4ffafe:	c1 f8 08             	sar    $0x8,%eax
4ffb01:	56                   	push   %esi
4ffb02:	88 44 24 1e          	mov    %al,0x1e(%esp)
4ffb06:	e8 15 b1 01 00       	call   0x51ac20
4ffb0b:	83 c4 0c             	add    $0xc,%esp
4ffb0e:	85 c0                	test   %eax,%eax
4ffb10:	0f 84 90 00 00 00    	je     0x4ffba6
4ffb16:	ff b4 24 80 00 00 00 	push   0x80(%esp)
4ffb1d:	ff 74 24 24          	push   0x24(%esp)
4ffb21:	56                   	push   %esi
4ffb22:	e8 a9 b2 01 00       	call   0x51add0
4ffb27:	83 c4 0c             	add    $0xc,%esp
4ffb2a:	85 c0                	test   %eax,%eax
4ffb2c:	74 78                	je     0x4ffba6
4ffb2e:	6a 04                	push   $0x4
4ffb30:	8d 44 24 14          	lea    0x14(%esp),%eax
4ffb34:	50                   	push   %eax
4ffb35:	56                   	push   %esi
4ffb36:	e8 95 b2 01 00       	call   0x51add0
4ffb3b:	83 c4 0c             	add    $0xc,%esp
4ffb3e:	85 c0                	test   %eax,%eax
4ffb40:	74 64                	je     0x4ffba6
4ffb42:	8b 44 24 24          	mov    0x24(%esp),%eax
4ffb46:	03 c7                	add    %edi,%eax
4ffb48:	89 44 24 28          	mov    %eax,0x28(%esp)
4ffb4c:	6a 00                	push   $0x0
4ffb4e:	3b c5                	cmp    %ebp,%eax
4ffb50:	7f 23                	jg     0x4ffb75
4ffb52:	8b 44 24 18          	mov    0x18(%esp),%eax
4ffb56:	03 c7                	add    %edi,%eax
4ffb58:	50                   	push   %eax
4ffb59:	56                   	push   %esi
4ffb5a:	e8 21 b0 01 00       	call   0x51ab80
4ffb5f:	83 c4 0c             	add    $0xc,%esp
4ffb62:	85 c0                	test   %eax,%eax
4ffb64:	74 40                	je     0x4ffba6
4ffb66:	8b 7c 24 28          	mov    0x28(%esp),%edi
4ffb6a:	43                   	inc    %ebx
4ffb6b:	3b fd                	cmp    %ebp,%edi
4ffb6d:	0f 8c 6d ff ff ff    	jl     0x4ffae0
4ffb73:	eb 29                	jmp    0x4ffb9e
4ffb75:	8d 44 24 30          	lea    0x30(%esp),%eax
4ffb79:	50                   	push   %eax
4ffb7a:	56                   	push   %esi
4ffb7b:	e8 00 b0 01 00       	call   0x51ab80
4ffb80:	83 c4 0c             	add    $0xc,%esp
4ffb83:	85 c0                	test   %eax,%eax
4ffb85:	74 1f                	je     0x4ffba6
4ffb87:	2b ef                	sub    %edi,%ebp
4ffb89:	8d 44 24 2c          	lea    0x2c(%esp),%eax
4ffb8d:	55                   	push   %ebp
4ffb8e:	50                   	push   %eax
4ffb8f:	8b 44 24 1c          	mov    0x1c(%esp),%eax
4ffb93:	03 c7                	add    %edi,%eax
4ffb95:	50                   	push   %eax
4ffb96:	e8 35 32 0d 00       	call   0x5d2dd0
4ffb9b:	83 c4 0c             	add    $0xc,%esp
4ffb9e:	c7 44 24 18 00 00 00 	movl   $0x0,0x18(%esp)
4ffba5:	00
4ffba6:	5d                   	pop    %ebp
4ffba7:	8d 44 24 28          	lea    0x28(%esp),%eax
4ffbab:	6a 40                	push   $0x40
4ffbad:	50                   	push   %eax
4ffbae:	e8 2d 1e f0 ff       	call   0x4019e0
4ffbb3:	56                   	push   %esi
4ffbb4:	e8 37 b5 01 00       	call   0x51b0f0
4ffbb9:	8b 4c 24 74          	mov    0x74(%esp),%ecx
4ffbbd:	83 c4 0c             	add    $0xc,%esp
4ffbc0:	8b 44 24 14          	mov    0x14(%esp),%eax
4ffbc4:	5f                   	pop    %edi
4ffbc5:	5e                   	pop    %esi
4ffbc6:	5b                   	pop    %ebx
4ffbc7:	33 cc                	xor    %esp,%ecx
4ffbc9:	e8 58 1e 0d 00       	call   0x5d1a26
4ffbce:	83 c4 60             	add    $0x60,%esp
4ffbd1:	c3                   	ret
4ffbd2:	cc                   	int3
4ffbd3:	cc                   	int3
4ffbd4:	cc                   	int3
4ffbd5:	cc                   	int3
4ffbd6:	cc                   	int3
4ffbd7:	cc                   	int3
4ffbd8:	cc                   	int3
4ffbd9:	cc                   	int3
4ffbda:	cc                   	int3
4ffbdb:	cc                   	int3
4ffbdc:	cc                   	int3
4ffbdd:	cc                   	int3
4ffbde:	cc                   	int3
4ffbdf:	cc                   	int3
4ffbe0:	6a 00                	push   $0x0
4ffbe2:	6a 00                	push   $0x0
4ffbe4:	ff 74 24 20          	push   0x20(%esp)
4ffbe8:	ff 74 24 20          	push   0x20(%esp)
4ffbec:	ff 74 24 20          	push   0x20(%esp)
4ffbf0:	ff 74 24 20          	push   0x20(%esp)
4ffbf4:	ff 74 24 20          	push   0x20(%esp)
4ffbf8:	ff 74 24 20          	push   0x20(%esp)
4ffbfc:	e8 0f 00 00 00       	call   0x4ffc10
4ffc01:	83 c4 20             	add    $0x20,%esp
4ffc04:	c3                   	ret
4ffc05:	cc                   	int3
4ffc06:	cc                   	int3
4ffc07:	cc                   	int3
4ffc08:	cc                   	int3
4ffc09:	cc                   	int3
4ffc0a:	cc                   	int3
4ffc0b:	cc                   	int3
4ffc0c:	cc                   	int3
4ffc0d:	cc                   	int3
4ffc0e:	cc                   	int3
4ffc0f:	cc                   	int3
4ffc10:	b8 70 00 00 00       	mov    $0x70,%eax
4ffc15:	e8 96 1b 0d 00       	call   0x5d17b0
4ffc1a:	a1 c0 14 69 00       	mov    0x6914c0,%eax
4ffc1f:	33 c4                	xor    %esp,%eax
4ffc21:	89 44 24 6c          	mov    %eax,0x6c(%esp)
4ffc25:	8b 44 24 74          	mov    0x74(%esp),%eax
4ffc29:	8b 8c 24 8c 00 00 00 	mov    0x8c(%esp),%ecx
4ffc30:	53                   	push   %ebx
4ffc31:	8b 5c 24 7c          	mov    0x7c(%esp),%ebx
4ffc35:	55                   	push   %ebp
4ffc36:	8b ac 24 88 00 00 00 	mov    0x88(%esp),%ebp
4ffc3d:	4b                   	dec    %ebx
4ffc3e:	56                   	push   %esi
4ffc3f:	8b b4 24 9c 00 00 00 	mov    0x9c(%esp),%esi
4ffc46:	89 44 24 10          	mov    %eax,0x10(%esp)
4ffc4a:	8b 84 24 88 00 00 00 	mov    0x88(%esp),%eax
4ffc51:	57                   	push   %edi
4ffc52:	89 44 24 10          	mov    %eax,0x10(%esp)
4ffc56:	33 ff                	xor    %edi,%edi
4ffc58:	8b 84 24 94 00 00 00 	mov    0x94(%esp),%eax
4ffc5f:	89 6c 24 28          	mov    %ebp,0x28(%esp)
4ffc63:	89 44 24 38          	mov    %eax,0x38(%esp)
4ffc67:	89 4c 24 24          	mov    %ecx,0x24(%esp)
4ffc6b:	c7 44 24 34 00 00 00 	movl   $0x0,0x34(%esp)
4ffc72:	00
4ffc73:	89 5c 24 2c          	mov    %ebx,0x2c(%esp)
4ffc77:	c7 44 24 18 00 00 00 	movl   $0x0,0x18(%esp)
4ffc7e:	00
4ffc7f:	85 c9                	test   %ecx,%ecx
4ffc81:	75 0b                	jne    0x4ffc8e
4ffc83:	e8 88 68 01 00       	call   0x516510
4ffc88:	8b c8                	mov    %eax,%ecx
4ffc8a:	89 44 24 24          	mov    %eax,0x24(%esp)
4ffc8e:	85 f6                	test   %esi,%esi
4ffc90:	51                   	push   %ecx
4ffc91:	0f 44 f1             	cmove  %ecx,%esi
4ffc94:	89 74 24 34          	mov    %esi,0x34(%esp)
4ffc98:	e8 23 0c ff ff       	call   0x4f08c0
4ffc9d:	8b f0                	mov    %eax,%esi
4ffc9f:	8b cb                	mov    %ebx,%ecx
4ffca1:	83 c4 04             	add    $0x4,%esp
4ffca4:	89 74 24 1c          	mov    %esi,0x1c(%esp)
4ffca8:	8d 04 36             	lea    (%esi,%esi,1),%eax
4ffcab:	2b c8                	sub    %eax,%ecx
4ffcad:	89 4c 24 20          	mov    %ecx,0x20(%esp)
4ffcb1:	49                   	dec    %ecx
4ffcb2:	3b e9                	cmp    %ecx,%ebp
4ffcb4:	7e 2d                	jle    0x4ffce3
4ffcb6:	6a 3e                	push   $0x3e
4ffcb8:	68 58 9c 62 00       	push   $0x629c58
4ffcbd:	6a 6e                	push   $0x6e
4ffcbf:	68 9a 00 00 00       	push   $0x9a
4ffcc4:	6a 04                	push   $0x4
4ffcc6:	e8 b5 92 fd ff       	call   0x4d8f80
4ffccb:	83 c4 14             	add    $0x14,%esp
4ffcce:	33 c0                	xor    %eax,%eax
4ffcd0:	5f                   	pop    %edi
4ffcd1:	5e                   	pop    %esi
4ffcd2:	5d                   	pop    %ebp
4ffcd3:	5b                   	pop    %ebx
4ffcd4:	8b 4c 24 6c          	mov    0x6c(%esp),%ecx
4ffcd8:	33 cc                	xor    %esp,%ecx
4ffcda:	e8 47 1d 0d 00       	call   0x5d1a26
4ffcdf:	83 c4 70             	add    $0x70,%esp
4ffce2:	c3                   	ret
4ffce3:	40                   	inc    %eax
4ffce4:	3b d8                	cmp    %eax,%ebx
4ffce6:	7d 0b                	jge    0x4ffcf3
4ffce8:	6a 44                	push   $0x44
4ffcea:	68 58 9c 62 00       	push   $0x629c58
4ffcef:	6a 78                	push   $0x78
4ffcf1:	eb cc                	jmp    0x4ffcbf
4ffcf3:	8b 44 24 14          	mov    0x14(%esp),%eax
4ffcf7:	6a 00                	push   $0x0
4ffcf9:	ff 74 24 28          	push   0x28(%esp)
4ffcfd:	8d 68 01             	lea    0x1(%eax),%ebp
4ffd00:	c6 00 00             	movb   $0x0,(%eax)
4ffd03:	6a 00                	push   $0x0
4ffd05:	03 ee                	add    %esi,%ebp
4ffd07:	8d 58 01             	lea    0x1(%eax),%ebx
4ffd0a:	55                   	push   %ebp
4ffd0b:	ff b4 24 a8 00 00 00 	push   0xa8(%esp)
4ffd12:	89 5c 24 28          	mov    %ebx,0x28(%esp)
4ffd16:	ff 74 24 4c          	push   0x4c(%esp)
4ffd1a:	e8 c1 ac 01 00       	call   0x51a9e0
4ffd1f:	83 c4 18             	add    $0x18,%esp
4ffd22:	85 c0                	test   %eax,%eax
4ffd24:	0f 84 63 02 00 00    	je     0x4fff8d
4ffd2a:	8b 44 24 20          	mov    0x20(%esp),%eax
4ffd2e:	2b 44 24 28          	sub    0x28(%esp),%eax
4ffd32:	48                   	dec    %eax
4ffd33:	50                   	push   %eax
4ffd34:	8d 04 2e             	lea    (%esi,%ebp,1),%eax
4ffd37:	6a 00                	push   $0x0
4ffd39:	50                   	push   %eax
4ffd3a:	e8 31 2f 0d 00       	call   0x5d2c70
4ffd3f:	8b 54 24 34          	mov    0x34(%esp),%edx
4ffd43:	8b c5                	mov    %ebp,%eax
4ffd45:	2b c2                	sub    %edx,%eax
4ffd47:	2b c6                	sub    %esi,%eax
4ffd49:	03 44 24 38          	add    0x38(%esp),%eax
4ffd4d:	52                   	push   %edx
4ffd4e:	ff 74 24 20          	push   0x20(%esp)
4ffd52:	50                   	push   %eax