580d94:	8b 4f 08             	mov    0x8(%edi),%ecx
580d97:	85 c9                	test   %ecx,%ecx
580d99:	75 03                	jne    0x580d9e
580d9b:	8b 4f 04             	mov    0x4(%edi),%ecx
580d9e:	6a 00                	push   $0x0
580da0:	51                   	push   %ecx
580da1:	e8 ca ee f6 ff       	call   0x4efc70
580da6:	83 c4 08             	add    $0x8,%esp
580da9:	85 c0                	test   %eax,%eax
580dab:	74 1a                	je     0x580dc7
580dad:	50                   	push   %eax
580dae:	53                   	push   %ebx
580daf:	e8 9c 43 f6 ff       	call   0x4e5150
580db4:	8b 7c 24 24          	mov    0x24(%esp),%edi
580db8:	46                   	inc    %esi
580db9:	83 c4 08             	add    $0x8,%esp
580dbc:	3b f5                	cmp    %ebp,%esi
580dbe:	7c c8                	jl     0x580d88
580dc0:	5e                   	pop    %esi
580dc1:	5f                   	pop    %edi
580dc2:	5d                   	pop    %ebp
580dc3:	8b c3                	mov    %ebx,%eax
580dc5:	5b                   	pop    %ebx
580dc6:	c3                   	ret
580dc7:	68 10 a8 50 00       	push   $0x50a810
580dcc:	53                   	push   %ebx
580dcd:	e8 1e 43 f6 ff       	call   0x4e50f0
580dd2:	6a 60                	push   $0x60
580dd4:	68 2c ba 65 00       	push   $0x65ba2c
580dd9:	6a 6e                	push   $0x6e
580ddb:	6a 67                	push   $0x67
580ddd:	6a 22                	push   $0x22
580ddf:	e8 9c 81 f5 ff       	call   0x4d8f80
580de4:	ff 77 08             	push   0x8(%edi)
580de7:	68 bc 85 65 00       	push   $0x6585bc
580dec:	ff 77 04             	push   0x4(%edi)
580def:	68 c4 85 65 00       	push   $0x6585c4
580df4:	ff 37                	push   (%edi)
580df6:	68 cc 85 65 00       	push   $0x6585cc
580dfb:	6a 06                	push   $0x6
580dfd:	e8 6e 78 f5 ff       	call   0x4d8670
580e02:	83 c4 38             	add    $0x38,%esp
580e05:	33 c0                	xor    %eax,%eax
580e07:	5e                   	pop    %esi
580e08:	5f                   	pop    %edi
580e09:	5d                   	pop    %ebp
580e0a:	5b                   	pop    %ebx
580e0b:	c3                   	ret
580e0c:	cc                   	int3
580e0d:	cc                   	int3
580e0e:	cc                   	int3
580e0f:	cc                   	int3
580e10:	b8 58 00 00 00       	mov    $0x58,%eax
580e15:	e8 96 09 05 00       	call   0x5d17b0
580e1a:	a1 c0 14 69 00       	mov    0x6914c0,%eax
580e1f:	33 c4                	xor    %esp,%eax
580e21:	89 44 24 54          	mov    %eax,0x54(%esp)
580e25:	8b 44 24 64          	mov    0x64(%esp),%eax
580e29:	56                   	push   %esi
580e2a:	57                   	push   %edi
580e2b:	8b 7c 24 68          	mov    0x68(%esp),%edi
580e2f:	33 f6                	xor    %esi,%esi
580e31:	57                   	push   %edi
580e32:	89 44 24 0c          	mov    %eax,0xc(%esp)
580e36:	e8 85 42 f6 ff       	call   0x4e50c0
580e3b:	83 c4 04             	add    $0x4,%esp
580e3e:	85 c0                	test   %eax,%eax
580e40:	7e 33                	jle    0x580e75
580e42:	56                   	push   %esi
580e43:	57                   	push   %edi
580e44:	e8 37 44 f6 ff       	call   0x4e5280
580e49:	50                   	push   %eax
580e4a:	8d 44 24 18          	lea    0x18(%esp),%eax
580e4e:	6a 50                	push   $0x50
580e50:	50                   	push   %eax
580e51:	e8 4a a2 f8 ff       	call   0x50b0a0
580e56:	8d 44 24 1c          	lea    0x1c(%esp),%eax
580e5a:	50                   	push   %eax
580e5b:	8d 44 24 24          	lea    0x24(%esp),%eax
580e5f:	50                   	push   %eax
580e60:	6a 00                	push   $0x0
580e62:	e8 c9 7f fe ff       	call   0x568e30
580e67:	57                   	push   %edi
580e68:	46                   	inc    %esi
580e69:	e8 52 42 f6 ff       	call   0x4e50c0
580e6e:	83 c4 24             	add    $0x24,%esp
580e71:	3b f0                	cmp    %eax,%esi
580e73:	7c cd                	jl     0x580e42
580e75:	8b 4c 24 5c          	mov    0x5c(%esp),%ecx
580e79:	8b 44 24 08          	mov    0x8(%esp),%eax
580e7d:	5f                   	pop    %edi
580e7e:	5e                   	pop    %esi
580e7f:	33 cc                	xor    %esp,%ecx
580e81:	e8 a0 0b 05 00       	call   0x5d1a26
580e86:	83 c4 58             	add    $0x58,%esp
580e89:	c3                   	ret
580e8a:	cc                   	int3
580e8b:	cc                   	int3
580e8c:	cc                   	int3
580e8d:	cc                   	int3
580e8e:	cc                   	int3
580e8f:	cc                   	int3
580e90:	b8 a8 ba 65 00       	mov    $0x65baa8,%eax
580e95:	c3                   	ret
580e96:	cc                   	int3
580e97:	cc                   	int3
580e98:	cc                   	int3
580e99:	cc                   	int3
580e9a:	cc                   	int3
580e9b:	cc                   	int3
580e9c:	cc                   	int3
580e9d:	cc                   	int3
580e9e:	cc                   	int3
580e9f:	cc                   	int3
580ea0:	56                   	push   %esi
580ea1:	8b 74 24 10          	mov    0x10(%esp),%esi
580ea5:	57                   	push   %edi
580ea6:	68 64 25 60 00       	push   $0x602564
580eab:	ff 74 24 1c          	push   0x1c(%esp)
580eaf:	68 d8 95 64 00       	push   $0x6495d8
580eb4:	56                   	push   %esi
580eb5:	e8 86 16 f6 ff       	call   0x4e2540
580eba:	8b 7c 24 20          	mov    0x20(%esp),%edi
580ebe:	83 c4 10             	add    $0x10,%esp
580ec1:	83 3f 00             	cmpl   $0x0,(%edi)
580ec4:	74 2e                	je     0x580ef4
580ec6:	6a 0c                	push   $0xc
580ec8:	68 d8 ba 65 00       	push   $0x65bad8
580ecd:	56                   	push   %esi
580ece:	e8 ed 85 f7 ff       	call   0x4f94c0
580ed3:	ff 37                	push   (%edi)
580ed5:	56                   	push   %esi
580ed6:	e8 85 31 ff ff       	call   0x574060
580edb:	83 c4 14             	add    $0x14,%esp
580ede:	83 7f 04 00          	cmpl   $0x0,0x4(%edi)
580ee2:	74 2f                	je     0x580f13
580ee4:	6a 02                	push   $0x2
580ee6:	68 f8 60 60 00       	push   $0x6060f8
580eeb:	56                   	push   %esi
580eec:	e8 cf 85 f7 ff       	call   0x4f94c0
580ef1:	83 c4 0c             	add    $0xc,%esp
580ef4:	83 7f 04 00          	cmpl   $0x0,0x4(%edi)
580ef8:	74 19                	je     0x580f13
580efa:	6a 0b                	push   $0xb
580efc:	68 e8 ba 65 00       	push   $0x65bae8
580f01:	56                   	push   %esi
580f02:	e8 b9 85 f7 ff       	call   0x4f94c0
580f07:	ff 77 04             	push   0x4(%edi)
580f0a:	56                   	push   %esi
580f0b:	e8 50 31 ff ff       	call   0x574060
580f10:	83 c4 14             	add    $0x14,%esp
580f13:	5f                   	pop    %edi
580f14:	b8 01 00 00 00       	mov    $0x1,%eax
580f19:	5e                   	pop    %esi
580f1a:	c3                   	ret
580f1b:	cc                   	int3
580f1c:	cc                   	int3
580f1d:	cc                   	int3
580f1e:	cc                   	int3
580f1f:	cc                   	int3
580f20:	b8 98 bb 65 00       	mov    $0x65bb98,%eax
580f25:	c3                   	ret
580f26:	cc                   	int3
580f27:	cc                   	int3
580f28:	cc                   	int3
580f29:	cc                   	int3
580f2a:	cc                   	int3
580f2b:	cc                   	int3
580f2c:	cc                   	int3
580f2d:	cc                   	int3
580f2e:	cc                   	int3
580f2f:	cc                   	int3
580f30:	b8 54 bb 65 00       	mov    $0x65bb54,%eax
580f35:	c3                   	ret
580f36:	cc                   	int3
580f37:	cc                   	int3
580f38:	cc                   	int3
580f39:	cc                   	int3
580f3a:	cc                   	int3
580f3b:	cc                   	int3
580f3c:	cc                   	int3
580f3d:	cc                   	int3
580f3e:	cc                   	int3
580f3f:	cc                   	int3
580f40:	53                   	push   %ebx
580f41:	55                   	push   %ebp
580f42:	8b 6c 24 10          	mov    0x10(%esp),%ebp
580f46:	ff 75 00             	push   0x0(%ebp)
580f49:	e8 72 84 f8 ff       	call   0x5093c0
580f4e:	50                   	push   %eax
580f4f:	40                   	inc    %eax
580f50:	50                   	push   %eax
580f51:	68 64 25 60 00       	push   $0x602564
580f56:	ff 74 24 28          	push   0x28(%esp)
580f5a:	68 d8 bb 65 00       	push   $0x65bbd8
580f5f:	ff 74 24 2c          	push   0x2c(%esp)
580f63:	e8 d8 15 f6 ff       	call   0x4e2540
580f68:	ff 75 04             	push   0x4(%ebp)
580f6b:	33 db                	xor    %ebx,%ebx
580f6d:	e8 4e 41 f6 ff       	call   0x4e50c0
580f72:	83 c4 20             	add    $0x20,%esp
580f75:	85 c0                	test   %eax,%eax
580f77:	7e 60                	jle    0x580fd9
580f79:	56                   	push   %esi
580f7a:	57                   	push   %edi
580f7b:	0f 1f 44 00 00       	nopl   0x0(%eax,%eax,1)
580f80:	53                   	push   %ebx
580f81:	ff 75 04             	push   0x4(%ebp)
580f84:	e8 f7 42 f6 ff       	call   0x4e5280
580f89:	8b f8                	mov    %eax,%edi
580f8b:	ff 37                	push   (%edi)
580f8d:	6a 00                	push   $0x0
580f8f:	e8 ac 92 fe ff       	call   0x56a240
580f94:	8b f0                	mov    %eax,%esi
580f96:	56                   	push   %esi
580f97:	68 64 25 60 00       	push   $0x602564
580f9c:	ff 74 24 38          	push   0x38(%esp)
580fa0:	68 f0 bb 65 00       	push   $0x65bbf0
580fa5:	ff 74 24 3c          	push   0x3c(%esp)
580fa9:	e8 92 15 f6 ff       	call   0x4e2540
580fae:	6a 46                	push   $0x46
580fb0:	68 08 bc 65 00       	push   $0x65bc08
580fb5:	56                   	push   %esi
580fb6:	e8 c5 f7 f5 ff       	call   0x4e0780
580fbb:	ff 77 04             	push   0x4(%edi)
580fbe:	ff 74 24 50          	push   0x50(%esp)
580fc2:	e8 b9 cc ff ff       	call   0x57dc80
580fc7:	ff 75 04             	push   0x4(%ebp)
580fca:	43                   	inc    %ebx
580fcb:	e8 f0 40 f6 ff       	call   0x4e50c0
580fd0:	83 c4 3c             	add    $0x3c,%esp
580fd3:	3b d8                	cmp    %eax,%ebx
580fd5:	7c a9                	jl     0x580f80
580fd7:	5f                   	pop    %edi
580fd8:	5e                   	pop    %esi
580fd9:	5d                   	pop    %ebp
580fda:	b8 01 00 00 00       	mov    $0x1,%eax
580fdf:	5b                   	pop    %ebx
580fe0:	c3                   	ret
580fe1:	cc                   	int3
580fe2:	cc                   	int3
580fe3:	cc                   	int3
580fe4:	cc                   	int3
580fe5:	cc                   	int3
580fe6:	cc                   	int3
580fe7:	cc                   	int3
580fe8:	cc                   	int3
580fe9:	cc                   	int3
580fea:	cc                   	int3
580feb:	cc                   	int3
580fec:	cc                   	int3
580fed:	cc                   	int3
580fee:	cc                   	int3
580fef:	cc                   	int3
580ff0:	b8 0c 00 00 00       	mov    $0xc,%eax
580ff5:	e8 b6 07 05 00       	call   0x5d17b0
580ffa:	53                   	push   %ebx
580ffb:	55                   	push   %ebp
580ffc:	56                   	push   %esi
580ffd:	8b 74 24 24          	mov    0x24(%esp),%esi
581001:	33 db                	xor    %ebx,%ebx
581003:	57                   	push   %edi
581004:	56                   	push   %esi
581005:	33 ed                	xor    %ebp,%ebp
581007:	89 5c 24 1c          	mov    %ebx,0x1c(%esp)
58100b:	e8 b0 40 f6 ff       	call   0x4e50c0
581010:	83 c4 04             	add    $0x4,%esp
581013:	85 c0                	test   %eax,%eax
581015:	0f 8e 03 01 00 00    	jle    0x58111e
58101b:	0f 1f 44 00 00       	nopl   0x0(%eax,%eax,1)
581020:	53                   	push   %ebx
581021:	56                   	push   %esi
581022:	e8 59 42 f6 ff       	call   0x4e5280
581027:	ff 70 04             	push   0x4(%eax)
58102a:	8b 70 08             	mov    0x8(%eax),%esi
58102d:	6a 00                	push   $0x0
58102f:	89 74 24 20          	mov    %esi,0x20(%esp)
581033:	e8 28 94 fe ff       	call   0x56a460
581038:	83 c4 10             	add    $0x10,%esp
58103b:	89 44 24 14          	mov    %eax,0x14(%esp)
58103f:	85 c0                	test   %eax,%eax
581041:	0f 84 85 01 00 00    	je     0x5811cc
581047:	33 db                	xor    %ebx,%ebx
581049:	85 f6                	test   %esi,%esi
58104b:	0f 84 59 01 00 00    	je     0x5811aa
581051:	8d 4e 01             	lea    0x1(%esi),%ecx
581054:	8a 06                	mov    (%esi),%al
581056:	46                   	inc    %esi
581057:	84 c0                	test   %al,%al
581059:	75 f9                	jne    0x581054
58105b:	2b f1                	sub    %ecx,%esi
58105d:	83 fe 40             	cmp    $0x40,%esi
581060:	0f 8f 1f 01 00 00    	jg     0x581185
581066:	85 ed                	test   %ebp,%ebp
581068:	75 2e                	jne    0x581098
58106a:	68 98 bb 65 00       	push   $0x65bb98
58106f:	e8 9c ac f6 ff       	call   0x4ebd10
581074:	8b f8                	mov    %eax,%edi
581076:	83 c4 04             	add    $0x4,%esp
581079:	85 ff                	test   %edi,%edi
58107b:	0f 84 a7 00 00 00    	je     0x581128
581081:	55                   	push   %ebp
581082:	ff 37                	push   (%edi)
581084:	e8 37 84 f8 ff       	call   0x5094c0
581089:	83 c4 08             	add    $0x8,%esp
58108c:	85 c0                	test   %eax,%eax
58108e:	0f 84 94 00 00 00    	je     0x581128
581094:	8b ef                	mov    %edi,%ebp
581096:	eb 02                	jmp    0x58109a
581098:	8b fd                	mov    %ebp,%edi
58109a:	ff 74 24 14          	push   0x14(%esp)
58109e:	57                   	push   %edi
58109f:	e8 4c 01 00 00       	call   0x5811f0
5810a4:	83 c4 08             	add    $0x8,%esp
5810a7:	85 c0                	test   %eax,%eax
5810a9:	0f 85 b1 00 00 00    	jne    0x581160
5810af:	68 54 bb 65 00       	push   $0x65bb54
5810b4:	e8 57 ac f6 ff       	call   0x4ebd10
5810b9:	8b d8                	mov    %eax,%ebx
5810bb:	83 c4 04             	add    $0x4,%esp
5810be:	85 db                	test   %ebx,%ebx
5810c0:	74 66                	je     0x581128
5810c2:	8b 4c 24 10          	mov    0x10(%esp),%ecx
5810c6:	83 fe ff             	cmp    $0xffffffff,%esi
5810c9:	75 0e                	jne    0x5810d9
5810cb:	8b f1                	mov    %ecx,%esi
5810cd:	8d 56 01             	lea    0x1(%esi),%edx
5810d0:	8a 06                	mov    (%esi),%al
5810d2:	46                   	inc    %esi
5810d3:	84 c0                	test   %al,%al
5810d5:	75 f9                	jne    0x5810d0
5810d7:	2b f2                	sub    %edx,%esi
5810d9:	56                   	push   %esi
5810da:	51                   	push   %ecx
5810db:	ff 73 04             	push   0x4(%ebx)
5810de:	e8 3d a8 f8 ff       	call   0x50b920
5810e3:	83 c4 0c             	add    $0xc,%esp
5810e6:	85 c0                	test   %eax,%eax
5810e8:	74 3e                	je     0x581128
5810ea:	53                   	push   %ebx
5810eb:	ff 77 04             	push   0x4(%edi)
5810ee:	e8 5d 40 f6 ff       	call   0x4e5150
5810f3:	83 c4 08             	add    $0x8,%esp
5810f6:	85 c0                	test   %eax,%eax
5810f8:	74 2e                	je     0x581128
5810fa:	8b 44 24 14          	mov    0x14(%esp),%eax
5810fe:	8b 74 24 28          	mov    0x28(%esp),%esi
581102:	89 03                	mov    %eax,(%ebx)
581104:	8b 5c 24 18          	mov    0x18(%esp),%ebx
581108:	43                   	inc    %ebx