57fd25:	68 71 02 00 00       	push   $0x271
57fd2a:	68 c4 b6 65 00       	push   $0x65b6c4
57fd2f:	ff 36                	push   (%esi)
57fd31:	e8 4a 0a f6 ff       	call   0x4e0780
57fd36:	68 72 02 00 00       	push   $0x272
57fd3b:	68 c4 b6 65 00       	push   $0x65b6c4
57fd40:	56                   	push   %esi
57fd41:	e8 3a 0a f6 ff       	call   0x4e0780
57fd46:	83 c4 20             	add    $0x20,%esp
57fd49:	85 ed                	test   %ebp,%ebp
57fd4b:	0f 84 77 01 00 00    	je     0x57fec8
57fd51:	5f                   	pop    %edi
57fd52:	5d                   	pop    %ebp
57fd53:	b8 fe ff ff ff       	mov    $0xfffffffe,%eax
57fd58:	5b                   	pop    %ebx
57fd59:	5e                   	pop    %esi
57fd5a:	83 c4 10             	add    $0x10,%esp
57fd5d:	c3                   	ret
57fd5e:	8d 44 24 14          	lea    0x14(%esp),%eax
57fd62:	50                   	push   %eax
57fd63:	56                   	push   %esi
57fd64:	e8 c7 02 00 00       	call   0x580030
57fd69:	83 c4 08             	add    $0x8,%esp
57fd6c:	89 44 24 18          	mov    %eax,0x18(%esp)
57fd70:	85 c0                	test   %eax,%eax
57fd72:	0f 84 67 01 00 00    	je     0x57fedf
57fd78:	8b 5c 24 30          	mov    0x30(%esp),%ebx
57fd7c:	53                   	push   %ebx
57fd7d:	e8 3e 53 f6 ff       	call   0x4e50c0
57fd82:	83 c4 04             	add    $0x4,%esp
57fd85:	85 c0                	test   %eax,%eax
57fd87:	0f 8e fb 00 00 00    	jle    0x57fe88
57fd8d:	8b 4e 04             	mov    0x4(%esi),%ecx
57fd90:	33 ff                	xor    %edi,%edi
57fd92:	8b 06                	mov    (%esi),%eax
57fd94:	03 c9                	add    %ecx,%ecx
57fd96:	53                   	push   %ebx
57fd97:	8b 44 c8 f8          	mov    -0x8(%eax,%ecx,8),%eax
57fd9b:	89 44 24 2c          	mov    %eax,0x2c(%esp)
57fd9f:	e8 1c 53 f6 ff       	call   0x4e50c0
57fda4:	83 c4 04             	add    $0x4,%esp
57fda7:	85 c0                	test   %eax,%eax
57fda9:	7e 2e                	jle    0x57fdd9
57fdab:	0f 1f 44 00 00       	nopl   0x0(%eax,%eax,1)
57fdb0:	57                   	push   %edi
57fdb1:	53                   	push   %ebx
57fdb2:	e8 c9 54 f6 ff       	call   0x4e5280
57fdb7:	50                   	push   %eax
57fdb8:	e8 43 f8 f6 ff       	call   0x4ef600
57fdbd:	83 c4 0c             	add    $0xc,%esp
57fdc0:	3d ea 02 00 00       	cmp    $0x2ea,%eax
57fdc5:	0f 84 0a 01 00 00    	je     0x57fed5
57fdcb:	53                   	push   %ebx
57fdcc:	47                   	inc    %edi
57fdcd:	e8 ee 52 f6 ff       	call   0x4e50c0
57fdd2:	83 c4 04             	add    $0x4,%esp
57fdd5:	3b f8                	cmp    %eax,%edi
57fdd7:	7c d7                	jl     0x57fdb0
57fdd9:	53                   	push   %ebx
57fdda:	33 ff                	xor    %edi,%edi
57fddc:	e8 df 52 f6 ff       	call   0x4e50c0
57fde1:	83 c4 04             	add    $0x4,%esp
57fde4:	85 c0                	test   %eax,%eax
57fde6:	0f 8e 9c 00 00 00    	jle    0x57fe88
57fdec:	0f 1f 40 00          	nopl   0x0(%eax)
57fdf0:	57                   	push   %edi
57fdf1:	53                   	push   %ebx
57fdf2:	e8 89 54 f6 ff       	call   0x4e5280
57fdf7:	50                   	push   %eax
57fdf8:	ff 74 24 20          	push   0x20(%esp)
57fdfc:	89 44 24 20          	mov    %eax,0x20(%esp)
57fe00:	e8 2b 4b 00 00       	call   0x584930
57fe05:	8b e8                	mov    %eax,%ebp
57fe07:	83 c4 10             	add    $0x10,%esp
57fe0a:	85 ed                	test   %ebp,%ebp
57fe0c:	75 47                	jne    0x57fe55
57fe0e:	8b 6c 24 28          	mov    0x28(%esp),%ebp
57fe12:	85 ed                	test   %ebp,%ebp
57fe14:	74 60                	je     0x57fe76
57fe16:	8b 45 00             	mov    0x0(%ebp),%eax
57fe19:	8b 00                	mov    (%eax),%eax
57fe1b:	83 e0 10             	and    $0x10,%eax
57fe1e:	50                   	push   %eax
57fe1f:	ff 74 24 14          	push   0x14(%esp)
57fe23:	6a 00                	push   $0x0
57fe25:	e8 26 c1 ff ff       	call   0x57bf50
57fe2a:	83 c4 0c             	add    $0xc,%esp
57fe2d:	85 c0                	test   %eax,%eax
57fe2f:	0f 84 a6 00 00 00    	je     0x57fedb
57fe35:	8b 4d 00             	mov    0x0(%ebp),%ecx
57fe38:	56                   	push   %esi
57fe39:	8b 49 08             	mov    0x8(%ecx),%ecx
57fe3c:	89 48 08             	mov    %ecx,0x8(%eax)
57fe3f:	c7 00 0c 00 00 00    	movl   $0xc,(%eax)
57fe45:	ff 75 04             	push   0x4(%ebp)
57fe48:	50                   	push   %eax
57fe49:	6a 00                	push   $0x0
57fe4b:	e8 90 48 00 00       	call   0x5846e0
57fe50:	83 c4 10             	add    $0x10,%esp
57fe53:	8b e8                	mov    %eax,%ebp
57fe55:	8b 46 10             	mov    0x10(%esi),%eax
57fe58:	85 c0                	test   %eax,%eax
57fe5a:	75 0c                	jne    0x57fe68
57fe5c:	e8 bf 51 f6 ff       	call   0x4e5020
57fe61:	89 46 10             	mov    %eax,0x10(%esi)
57fe64:	85 c0                	test   %eax,%eax
57fe66:	74 20                	je     0x57fe88
57fe68:	55                   	push   %ebp
57fe69:	50                   	push   %eax
57fe6a:	e8 e1 52 f6 ff       	call   0x4e5150
57fe6f:	83 c4 08             	add    $0x8,%esp
57fe72:	85 c0                	test   %eax,%eax
57fe74:	74 65                	je     0x57fedb
57fe76:	53                   	push   %ebx
57fe77:	47                   	inc    %edi
57fe78:	e8 43 52 f6 ff       	call   0x4e50c0
57fe7d:	83 c4 04             	add    $0x4,%esp
57fe80:	3b f8                	cmp    %eax,%edi
57fe82:	0f 8c 68 ff ff ff    	jl     0x57fdf0
57fe88:	bf 01 00 00 00       	mov    $0x1,%edi
57fe8d:	83 7c 24 18 02       	cmpl   $0x2,0x18(%esp)
57fe92:	75 0c                	jne    0x57fea0
57fe94:	ff 74 24 14          	push   0x14(%esp)
57fe98:	e8 83 50 f6 ff       	call   0x4e4f20
57fe9d:	83 c4 04             	add    $0x4,%esp
57fea0:	85 ff                	test   %edi,%edi
57fea2:	74 3b                	je     0x57fedf
57fea4:	83 7c 24 1c 00       	cmpl   $0x0,0x1c(%esp)
57fea9:	8b 44 24 24          	mov    0x24(%esp),%eax
57fead:	89 30                	mov    %esi,(%eax)
57feaf:	74 17                	je     0x57fec8
57feb1:	56                   	push   %esi
57feb2:	e8 09 48 00 00       	call   0x5846c0
57feb7:	50                   	push   %eax
57feb8:	e8 03 52 f6 ff       	call   0x4e50c0
57febd:	83 c4 08             	add    $0x8,%esp
57fec0:	85 c0                	test   %eax,%eax
57fec2:	0f 8e 89 fe ff ff    	jle    0x57fd51
57fec8:	5f                   	pop    %edi
57fec9:	5d                   	pop    %ebp
57feca:	5b                   	pop    %ebx
57fecb:	b8 01 00 00 00       	mov    $0x1,%eax
57fed0:	5e                   	pop    %esi
57fed1:	83 c4 10             	add    $0x10,%esp
57fed4:	c3                   	ret
57fed5:	83 4e 14 02          	orl    $0x2,0x14(%esi)
57fed9:	eb ad                	jmp    0x57fe88
57fedb:	33 ff                	xor    %edi,%edi
57fedd:	eb ae                	jmp    0x57fe8d
57fedf:	85 f6                	test   %esi,%esi
57fee1:	74 7a                	je     0x57ff5d
57fee3:	ff 76 0c             	push   0xc(%esi)
57fee6:	e8 35 50 f6 ff       	call   0x4e4f20
57feeb:	68 00 00 58 00       	push   $0x580000
57fef0:	ff 76 10             	push   0x10(%esi)
57fef3:	e8 f8 51 f6 ff       	call   0x4e50f0
57fef8:	8b 3e                	mov    (%esi),%edi
57fefa:	33 db                	xor    %ebx,%ebx
57fefc:	83 c4 0c             	add    $0xc,%esp
57feff:	39 5e 04             	cmp    %ebx,0x4(%esi)
57ff02:	7e 28                	jle    0x57ff2c
57ff04:	ff 37                	push   (%edi)
57ff06:	e8 d5 72 fd ff       	call   0x5571e0
57ff0b:	68 90 48 58 00       	push   $0x584890
57ff10:	ff 77 04             	push   0x4(%edi)
57ff13:	e8 d8 51 f6 ff       	call   0x4e50f0
57ff18:	ff 77 08             	push   0x8(%edi)
57ff1b:	e8 70 49 00 00       	call   0x584890
57ff20:	43                   	inc    %ebx
57ff21:	8d 7f 10             	lea    0x10(%edi),%edi
57ff24:	83 c4 10             	add    $0x10,%esp
57ff27:	3b 5e 04             	cmp    0x4(%esi),%ebx
57ff2a:	7c d8                	jl     0x57ff04
57ff2c:	68 00 bf 57 00       	push   $0x57bf00
57ff31:	ff 76 08             	push   0x8(%esi)
57ff34:	e8 b7 51 f6 ff       	call   0x4e50f0
57ff39:	68 71 02 00 00       	push   $0x271
57ff3e:	68 c4 b6 65 00       	push   $0x65b6c4
57ff43:	ff 36                	push   (%esi)
57ff45:	e8 36 08 f6 ff       	call   0x4e0780
57ff4a:	68 72 02 00 00       	push   $0x272
57ff4f:	68 c4 b6 65 00       	push   $0x65b6c4
57ff54:	56                   	push   %esi
57ff55:	e8 26 08 f6 ff       	call   0x4e0780
57ff5a:	83 c4 20             	add    $0x20,%esp
57ff5d:	5f                   	pop    %edi
57ff5e:	5d                   	pop    %ebp
57ff5f:	5b                   	pop    %ebx
57ff60:	33 c0                	xor    %eax,%eax
57ff62:	5e                   	pop    %esi
57ff63:	83 c4 10             	add    $0x10,%esp
57ff66:	c3                   	ret
57ff67:	cc                   	int3
57ff68:	cc                   	int3
57ff69:	cc                   	int3
57ff6a:	cc                   	int3
57ff6b:	cc                   	int3
57ff6c:	cc                   	int3
57ff6d:	cc                   	int3
57ff6e:	cc                   	int3
57ff6f:	cc                   	int3
57ff70:	57                   	push   %edi
57ff71:	8b 7c 24 08          	mov    0x8(%esp),%edi
57ff75:	85 ff                	test   %edi,%edi
57ff77:	0f 84 7e 00 00 00    	je     0x57fffb
57ff7d:	53                   	push   %ebx
57ff7e:	56                   	push   %esi
57ff7f:	ff 77 0c             	push   0xc(%edi)
57ff82:	e8 99 4f f6 ff       	call   0x4e4f20
57ff87:	68 00 00 58 00       	push   $0x580000
57ff8c:	ff 77 10             	push   0x10(%edi)
57ff8f:	e8 5c 51 f6 ff       	call   0x4e50f0
57ff94:	8b 37                	mov    (%edi),%esi
57ff96:	33 db                	xor    %ebx,%ebx
57ff98:	83 c4 0c             	add    $0xc,%esp
57ff9b:	39 5f 04             	cmp    %ebx,0x4(%edi)
57ff9e:	7e 28                	jle    0x57ffc8
57ffa0:	ff 36                	push   (%esi)
57ffa2:	e8 39 72 fd ff       	call   0x5571e0
57ffa7:	68 90 48 58 00       	push   $0x584890
57ffac:	ff 76 04             	push   0x4(%esi)
57ffaf:	e8 3c 51 f6 ff       	call   0x4e50f0
57ffb4:	ff 76 08             	push   0x8(%esi)
57ffb7:	e8 d4 48 00 00       	call   0x584890
57ffbc:	43                   	inc    %ebx
57ffbd:	8d 76 10             	lea    0x10(%esi),%esi
57ffc0:	83 c4 10             	add    $0x10,%esp
57ffc3:	3b 5f 04             	cmp    0x4(%edi),%ebx
57ffc6:	7c d8                	jl     0x57ffa0
57ffc8:	68 00 bf 57 00       	push   $0x57bf00
57ffcd:	ff 77 08             	push   0x8(%edi)
57ffd0:	e8 1b 51 f6 ff       	call   0x4e50f0
57ffd5:	68 71 02 00 00       	push   $0x271
57ffda:	68 c4 b6 65 00       	push   $0x65b6c4
57ffdf:	ff 37                	push   (%edi)
57ffe1:	e8 9a 07 f6 ff       	call   0x4e0780
57ffe6:	68 72 02 00 00       	push   $0x272
57ffeb:	68 c4 b6 65 00       	push   $0x65b6c4
57fff0:	57                   	push   %edi
57fff1:	e8 8a 07 f6 ff       	call   0x4e0780
57fff6:	83 c4 20             	add    $0x20,%esp
57fff9:	5e                   	pop    %esi
57fffa:	5b                   	pop    %ebx
57fffb:	5f                   	pop    %edi
57fffc:	c3                   	ret
57fffd:	cc                   	int3
57fffe:	cc                   	int3
57ffff:	cc                   	int3
580000:	8b 44 24 04          	mov    0x4(%esp),%eax
580004:	8b 08                	mov    (%eax),%ecx
580006:	85 c9                	test   %ecx,%ecx
580008:	74 18                	je     0x580022
58000a:	f6 01 08             	testb  $0x8,(%ecx)
58000d:	74 13                	je     0x580022
58000f:	68 5c 02 00 00       	push   $0x25c
580014:	68 c4 b6 65 00       	push   $0x65b6c4
580019:	50                   	push   %eax
58001a:	e8 61 07 f6 ff       	call   0x4e0780
58001f:	83 c4 0c             	add    $0xc,%esp
580022:	c3                   	ret
580023:	cc                   	int3
580024:	cc                   	int3
580025:	cc                   	int3
580026:	cc                   	int3
580027:	cc                   	int3
580028:	cc                   	int3
580029:	cc                   	int3
58002a:	cc                   	int3
58002b:	cc                   	int3
58002c:	cc                   	int3
58002d:	cc                   	int3
58002e:	cc                   	int3
58002f:	cc                   	int3
580030:	b8 0c 00 00 00       	mov    $0xc,%eax
580035:	e8 76 17 05 00       	call   0x5d17b0
58003a:	53                   	push   %ebx
58003b:	55                   	push   %ebp
58003c:	56                   	push   %esi
58003d:	57                   	push   %edi
58003e:	8b 7c 24 20          	mov    0x20(%esp),%edi
580042:	8b 4f 04             	mov    0x4(%edi),%ecx
580045:	8d 6f 0c             	lea    0xc(%edi),%ebp
580048:	8b 1f                	mov    (%edi),%ebx
58004a:	8b c1                	mov    %ecx,%eax
58004c:	03 c0                	add    %eax,%eax
58004e:	89 6c 24 18          	mov    %ebp,0x18(%esp)
580052:	8b 74 c3 f8          	mov    -0x8(%ebx,%eax,8),%esi
580056:	85 f6                	test   %esi,%esi
580058:	74 42                	je     0x58009c
58005a:	8b 45 00             	mov    0x0(%ebp),%eax
58005d:	85 c0                	test   %eax,%eax
58005f:	75 10                	jne    0x580071
580061:	e8 1a 48 00 00       	call   0x584880
580066:	89 45 00             	mov    %eax,0x0(%ebp)
580069:	85 c0                	test   %eax,%eax
58006b:	0f 84 fb 00 00 00    	je     0x58016c
580071:	56                   	push   %esi
580072:	50                   	push   %eax
580073:	e8 18 4e f6 ff       	call   0x4e4e90
580078:	83 c4 08             	add    $0x8,%esp
58007b:	85 c0                	test   %eax,%eax
58007d:	79 14                	jns    0x580093
58007f:	56                   	push   %esi
580080:	ff 75 00             	push   0x0(%ebp)
580083:	e8 c8 50 f6 ff       	call   0x4e5150
580088:	83 c4 08             	add    $0x8,%esp
58008b:	85 c0                	test   %eax,%eax
58008d:	0f 84 d9 00 00 00    	je     0x58016c
580093:	8b 6c 24 24          	mov    0x24(%esp),%ebp
580097:	8b 1f                	mov    (%edi),%ebx
580099:	8b 4f 04             	mov    0x4(%edi),%ecx
58009c:	c7 44 24 10 01 00 00 	movl   $0x1,0x10(%esp)
5800a3:	00
5800a4:	83 f9 01             	cmp    $0x1,%ecx
5800a7:	0f 8e 92 00 00 00    	jle    0x58013f
5800ad:	83 c3 04             	add    $0x4,%ebx
5800b0:	8b 43 04             	mov    0x4(%ebx),%eax
5800b3:	89 44 24 14          	mov    %eax,0x14(%esp)
5800b7:	85 c0                	test   %eax,%eax
5800b9:	0f 84 80 00 00 00    	je     0x58013f
5800bf:	ff 73 10             	push   0x10(%ebx)
5800c2:	83 c3 10             	add    $0x10,%ebx
5800c5:	33 f6                	xor    %esi,%esi
5800c7:	e8 f4 4f f6 ff       	call   0x4e50c0
5800cc:	83 c4 04             	add    $0x4,%esp
5800cf:	85 c0                	test   %eax,%eax
5800d1:	7e 5a                	jle    0x58012d
5800d3:	56                   	push   %esi
5800d4:	ff 33                	push   (%ebx)
5800d6:	e8 a5 51 f6 ff       	call   0x4e5280
5800db:	8b f8                	mov    %eax,%edi
5800dd:	83 c4 08             	add    $0x8,%esp
5800e0:	8b 44 24 14          	mov    0x14(%esp),%eax
5800e4:	39 47 04             	cmp    %eax,0x4(%edi)
5800e7:	75 31                	jne    0x58011a
5800e9:	8b 45 00             	mov    0x0(%ebp),%eax
5800ec:	85 c0                	test   %eax,%eax
5800ee:	75 0c                	jne    0x5800fc
5800f0:	e8 8b 47 00 00       	call   0x584880
5800f5:	89 45 00             	mov    %eax,0x0(%ebp)
5800f8:	85 c0                	test   %eax,%eax
5800fa:	74 58                	je     0x580154
5800fc:	57                   	push   %edi
5800fd:	50                   	push   %eax
5800fe:	e8 8d 4d f6 ff       	call   0x4e4e90
580103:	83 c4 08             	add    $0x8,%esp
580106:	85 c0                	test   %eax,%eax
580108:	79 10                	jns    0x58011a
58010a:	57                   	push   %edi
58010b:	ff 75 00             	push   0x0(%ebp)