58fa30:	50                   	push   %eax
58fa31:	e8 aa c5 fe ff       	call   0x57bfe0
58fa36:	8b 46 04             	mov    0x4(%esi),%eax
58fa39:	8d 76 04             	lea    0x4(%esi),%esi
58fa3c:	83 c4 04             	add    $0x4,%esp
58fa3f:	85 c0                	test   %eax,%eax
58fa41:	75 ed                	jne    0x58fa30
58fa43:	53                   	push   %ebx
58fa44:	e8 e7 06 f1 ff       	call   0x4a0130
58fa49:	83 c4 04             	add    $0x4,%esp
58fa4c:	8b 44 24 18          	mov    0x18(%esp),%eax
58fa50:	85 c0                	test   %eax,%eax
58fa52:	74 09                	je     0x58fa5d
58fa54:	50                   	push   %eax
58fa55:	e8 86 c5 fe ff       	call   0x57bfe0
58fa5a:	83 c4 04             	add    $0x4,%esp
58fa5d:	85 ff                	test   %edi,%edi
58fa5f:	74 09                	je     0x58fa6a
58fa61:	57                   	push   %edi
58fa62:	e8 79 c5 fe ff       	call   0x57bfe0
58fa67:	83 c4 04             	add    $0x4,%esp
58fa6a:	8b 44 24 30          	mov    0x30(%esp),%eax
58fa6e:	5f                   	pop    %edi
58fa6f:	5e                   	pop    %esi
58fa70:	5b                   	pop    %ebx
58fa71:	83 c4 2c             	add    $0x2c,%esp
58fa74:	c3                   	ret
58fa75:	cc                   	int3
58fa76:	cc                   	int3
58fa77:	cc                   	int3
58fa78:	cc                   	int3
58fa79:	cc                   	int3
58fa7a:	cc                   	int3
58fa7b:	cc                   	int3
58fa7c:	cc                   	int3
58fa7d:	cc                   	int3
58fa7e:	cc                   	int3
58fa7f:	cc                   	int3
58fa80:	56                   	push   %esi
58fa81:	e8 5a d9 00 00       	call   0x59d3e0
58fa86:	50                   	push   %eax
58fa87:	e8 24 c0 fe ff       	call   0x57bab0
58fa8c:	8b f0                	mov    %eax,%esi
58fa8e:	83 c4 04             	add    $0x4,%esp
58fa91:	85 f6                	test   %esi,%esi
58fa93:	74 26                	je     0x58fabb
58fa95:	ff 74 24 14          	push   0x14(%esp)
58fa99:	ff 74 24 14          	push   0x14(%esp)
58fa9d:	ff 74 24 14          	push   0x14(%esp)
58faa1:	ff 74 24 14          	push   0x14(%esp)
58faa5:	56                   	push   %esi
58faa6:	e8 15 c1 fe ff       	call   0x57bbc0
58faab:	83 c4 14             	add    $0x14,%esp
58faae:	85 c0                	test   %eax,%eax
58fab0:	75 0d                	jne    0x58fabf
58fab2:	56                   	push   %esi
58fab3:	e8 68 b8 fe ff       	call   0x57b320
58fab8:	83 c4 04             	add    $0x4,%esp
58fabb:	33 c0                	xor    %eax,%eax
58fabd:	5e                   	pop    %esi
58fabe:	c3                   	ret
58fabf:	8b c6                	mov    %esi,%eax
58fac1:	5e                   	pop    %esi
58fac2:	c3                   	ret
58fac3:	cc                   	int3
58fac4:	cc                   	int3
58fac5:	cc                   	int3
58fac6:	cc                   	int3
58fac7:	cc                   	int3
58fac8:	cc                   	int3
58fac9:	cc                   	int3
58faca:	cc                   	int3
58facb:	cc                   	int3
58facc:	cc                   	int3
58facd:	cc                   	int3
58face:	cc                   	int3
58facf:	cc                   	int3
58fad0:	56                   	push   %esi
58fad1:	e8 7a c9 00 00       	call   0x59c450
58fad6:	50                   	push   %eax
58fad7:	e8 d4 bf fe ff       	call   0x57bab0
58fadc:	8b f0                	mov    %eax,%esi
58fade:	83 c4 04             	add    $0x4,%esp
58fae1:	85 f6                	test   %esi,%esi
58fae3:	0f 84 8a 00 00 00    	je     0x58fb73
58fae9:	ff 74 24 14          	push   0x14(%esp)
58faed:	ff 74 24 14          	push   0x14(%esp)
58faf1:	ff 74 24 14          	push   0x14(%esp)
58faf5:	ff 74 24 14          	push   0x14(%esp)
58faf9:	56                   	push   %esi
58fafa:	e8 01 c1 fe ff       	call   0x57bc00
58faff:	83 c4 14             	add    $0x14,%esp
58fb02:	85 c0                	test   %eax,%eax
58fb04:	75 71                	jne    0x58fb77
58fb06:	e8 75 18 f1 ff       	call   0x4a1380
58fb0b:	8b c8                	mov    %eax,%ecx
58fb0d:	81 e1 00 00 00 ff    	and    $0xff000000,%ecx
58fb13:	81 f9 00 00 00 10    	cmp    $0x10000000,%ecx
58fb19:	75 4f                	jne    0x58fb6a
58fb1b:	25 ff 0f 00 00       	and    $0xfff,%eax
58fb20:	3d 87 00 00 00       	cmp    $0x87,%eax
58fb25:	74 07                	je     0x58fb2e
58fb27:	3d 88 00 00 00       	cmp    $0x88,%eax
58fb2c:	75 3c                	jne    0x58fb6a
58fb2e:	e8 dd 15 f1 ff       	call   0x4a1110
58fb33:	56                   	push   %esi
58fb34:	e8 e7 b7 fe ff       	call   0x57b320
58fb39:	e8 42 c6 00 00       	call   0x59c180
58fb3e:	50                   	push   %eax
58fb3f:	e8 6c bf fe ff       	call   0x57bab0
58fb44:	8b f0                	mov    %eax,%esi
58fb46:	83 c4 08             	add    $0x8,%esp
58fb49:	85 f6                	test   %esi,%esi
58fb4b:	74 26                	je     0x58fb73
58fb4d:	ff 74 24 14          	push   0x14(%esp)
58fb51:	ff 74 24 14          	push   0x14(%esp)
58fb55:	ff 74 24 14          	push   0x14(%esp)
58fb59:	ff 74 24 14          	push   0x14(%esp)
58fb5d:	56                   	push   %esi
58fb5e:	e8 9d c0 fe ff       	call   0x57bc00
58fb63:	83 c4 14             	add    $0x14,%esp
58fb66:	85 c0                	test   %eax,%eax
58fb68:	75 0d                	jne    0x58fb77
58fb6a:	56                   	push   %esi
58fb6b:	e8 b0 b7 fe ff       	call   0x57b320
58fb70:	83 c4 04             	add    $0x4,%esp
58fb73:	33 c0                	xor    %eax,%eax
58fb75:	5e                   	pop    %esi
58fb76:	c3                   	ret
58fb77:	8b c6                	mov    %esi,%eax
58fb79:	5e                   	pop    %esi
58fb7a:	c3                   	ret
58fb7b:	cc                   	int3
58fb7c:	cc                   	int3
58fb7d:	cc                   	int3
58fb7e:	cc                   	int3
58fb7f:	cc                   	int3
58fb80:	b8 14 00 00 00       	mov    $0x14,%eax
58fb85:	e8 66 19 05 00       	call   0x5e14f0
58fb8a:	53                   	push   %ebx
58fb8b:	55                   	push   %ebp
58fb8c:	8b 6c 24 30          	mov    0x30(%esp),%ebp
58fb90:	56                   	push   %esi
58fb91:	57                   	push   %edi
58fb92:	55                   	push   %ebp
58fb93:	c7 44 24 1c 00 00 00 	movl   $0x0,0x1c(%esp)
58fb9a:	00
58fb9b:	33 f6                	xor    %esi,%esi
58fb9d:	c7 44 24 14 00 00 00 	movl   $0x0,0x14(%esp)
58fba4:	00
58fba5:	c7 44 24 18 00 00 00 	movl   $0x0,0x18(%esp)
58fbac:	00
58fbad:	e8 8e d0 fe ff       	call   0x57cc40
58fbb2:	55                   	push   %ebp
58fbb3:	8b f8                	mov    %eax,%edi
58fbb5:	e8 26 19 f0 ff       	call   0x4914e0
58fbba:	8b d8                	mov    %eax,%ebx
58fbbc:	55                   	push   %ebp
58fbbd:	89 5c 24 28          	mov    %ebx,0x28(%esp)
58fbc1:	e8 8a 15 f0 ff       	call   0x491150
58fbc6:	83 c4 0c             	add    $0xc,%esp
58fbc9:	89 44 24 20          	mov    %eax,0x20(%esp)
58fbcd:	85 db                	test   %ebx,%ebx
58fbcf:	0f 84 93 02 00 00    	je     0x58fe68
58fbd5:	85 c0                	test   %eax,%eax
58fbd7:	0f 84 8b 02 00 00    	je     0x58fe68
58fbdd:	85 ff                	test   %edi,%edi
58fbdf:	0f 84 83 02 00 00    	je     0x58fe68
58fbe5:	e8 66 0a 00 00       	call   0x590650
58fbea:	8b f8                	mov    %eax,%edi
58fbec:	85 ff                	test   %edi,%edi
58fbee:	75 11                	jne    0x58fc01
58fbf0:	68 03 01 00 00       	push   $0x103
58fbf5:	68 88 70 6c 00       	push   $0x6c7088
58fbfa:	6a 41                	push   $0x41
58fbfc:	e9 73 02 00 00       	jmp    0x58fe74
58fc01:	8b 6f 04             	mov    0x4(%edi),%ebp
58fc04:	e8 17 82 f4 ff       	call   0x4d7e20
58fc09:	8b d8                	mov    %eax,%ebx
58fc0b:	85 db                	test   %ebx,%ebx
58fc0d:	0f 84 db 01 00 00    	je     0x58fdee
58fc13:	e8 f8 36 f2 ff       	call   0x4b3310
58fc18:	8b f0                	mov    %eax,%esi
58fc1a:	85 f6                	test   %esi,%esi
58fc1c:	0f 84 cc 01 00 00    	je     0x58fdee
58fc22:	e8 e9 36 f2 ff       	call   0x4b3310
58fc27:	89 44 24 14          	mov    %eax,0x14(%esp)
58fc2b:	85 c0                	test   %eax,%eax
58fc2d:	0f 84 bb 01 00 00    	je     0x58fdee
58fc33:	e8 d8 36 f2 ff       	call   0x4b3310
58fc38:	89 44 24 10          	mov    %eax,0x10(%esp)
58fc3c:	85 c0                	test   %eax,%eax
58fc3e:	0f 84 aa 01 00 00    	je     0x58fdee
58fc44:	53                   	push   %ebx
58fc45:	56                   	push   %esi
58fc46:	ff 74 24 24          	push   0x24(%esp)
58fc4a:	e8 f1 bd fe ff       	call   0x57ba40
58fc4f:	83 c4 0c             	add    $0xc,%esp
58fc52:	85 c0                	test   %eax,%eax
58fc54:	75 11                	jne    0x58fc67
58fc56:	68 0f 01 00 00       	push   $0x10f
58fc5b:	68 88 70 6c 00       	push   $0x6c7088
58fc60:	6a 10                	push   $0x10
58fc62:	e9 93 01 00 00       	jmp    0x58fdfa
58fc67:	56                   	push   %esi
58fc68:	e8 03 37 f2 ff       	call   0x4b3370
58fc6d:	8b 4c 24 30          	mov    0x30(%esp),%ecx
58fc71:	83 c4 04             	add    $0x4,%esp
58fc74:	c1 e1 03             	shl    $0x3,%ecx
58fc77:	89 44 24 1c          	mov    %eax,0x1c(%esp)
58fc7b:	3b c8                	cmp    %eax,%ecx
58fc7d:	7e 12                	jle    0x58fc91
58fc7f:	83 c0 07             	add    $0x7,%eax
58fc82:	99                   	cltd
58fc83:	83 e2 07             	and    $0x7,%edx
58fc86:	03 c2                	add    %edx,%eax
58fc88:	c1 f8 03             	sar    $0x3,%eax
58fc8b:	89 44 24 2c          	mov    %eax,0x2c(%esp)
58fc8f:	eb 04                	jmp    0x58fc95
58fc91:	8b 44 24 2c          	mov    0x2c(%esp),%eax
58fc95:	ff 74 24 10          	push   0x10(%esp)
58fc99:	50                   	push   %eax
58fc9a:	ff 74 24 30          	push   0x30(%esp)
58fc9e:	e8 6d 2f f2 ff       	call   0x4b2c10
58fca3:	83 c4 0c             	add    $0xc,%esp
58fca6:	85 c0                	test   %eax,%eax
58fca8:	75 11                	jne    0x58fcbb
58fcaa:	68 19 01 00 00       	push   $0x119
58fcaf:	68 88 70 6c 00       	push   $0x6c7088
58fcb4:	6a 03                	push   $0x3
58fcb6:	e9 3f 01 00 00       	jmp    0x58fdfa
58fcbb:	8b 4c 24 2c          	mov    0x2c(%esp),%ecx
58fcbf:	8d 04 cd 00 00 00 00 	lea    0x0(,%ecx,8),%eax
58fcc6:	8b 4c 24 1c          	mov    0x1c(%esp),%ecx
58fcca:	3b c1                	cmp    %ecx,%eax
58fccc:	7e 2e                	jle    0x58fcfc
58fcce:	83 e1 07             	and    $0x7,%ecx
58fcd1:	b8 08 00 00 00       	mov    $0x8,%eax
58fcd6:	2b c1                	sub    %ecx,%eax
58fcd8:	50                   	push   %eax
58fcd9:	8b 44 24 14          	mov    0x14(%esp),%eax
58fcdd:	50                   	push   %eax
58fcde:	50                   	push   %eax
58fcdf:	e8 3c 4a f2 ff       	call   0x4b4720
58fce4:	83 c4 0c             	add    $0xc,%esp
58fce7:	85 c0                	test   %eax,%eax
58fce9:	75 11                	jne    0x58fcfc
58fceb:	68 1e 01 00 00       	push   $0x11e
58fcf0:	68 88 70 6c 00       	push   $0x6c7088
58fcf5:	6a 03                	push   $0x3
58fcf7:	e9 fe 00 00 00       	jmp    0x58fdfa
58fcfc:	8b 44 24 34          	mov    0x34(%esp),%eax
58fd00:	8b 4c 24 30          	mov    0x30(%esp),%ecx
58fd04:	85 c9                	test   %ecx,%ecx
58fd06:	74 21                	je     0x58fd29
58fd08:	85 c0                	test   %eax,%eax
58fd0a:	74 1d                	je     0x58fd29
58fd0c:	50                   	push   %eax
58fd0d:	ff 37                	push   (%edi)
58fd0f:	89 4c 24 24          	mov    %ecx,0x24(%esp)
58fd13:	e8 b8 33 f2 ff       	call   0x4b30d0
58fd18:	83 c4 08             	add    $0x8,%esp
58fd1b:	85 c0                	test   %eax,%eax
58fd1d:	75 2d                	jne    0x58fd4c
58fd1f:	68 2b 01 00 00       	push   $0x12b
58fd24:	e9 ca 00 00 00       	jmp    0x58fdf3
58fd29:	57                   	push   %edi
58fd2a:	8d 44 24 1c          	lea    0x1c(%esp),%eax
58fd2e:	50                   	push   %eax
58fd2f:	53                   	push   %ebx
58fd30:	ff 74 24 44          	push   0x44(%esp)
58fd34:	e8 77 d0 fe ff       	call   0x57cdb0
58fd39:	83 c4 10             	add    $0x10,%esp
58fd3c:	85 c0                	test   %eax,%eax
58fd3e:	0f 84 9c 00 00 00    	je     0x58fde0
58fd44:	8b 44 24 18          	mov    0x18(%esp),%eax
58fd48:	89 44 24 1c          	mov    %eax,0x1c(%esp)
58fd4c:	53                   	push   %ebx
58fd4d:	56                   	push   %esi
58fd4e:	ff 37                	push   (%edi)
58fd50:	ff 74 24 2c          	push   0x2c(%esp)
58fd54:	ff 74 24 24          	push   0x24(%esp)
58fd58:	e8 83 ee fd ff       	call   0x56ebe0
58fd5d:	83 c4 14             	add    $0x14,%esp
58fd60:	85 c0                	test   %eax,%eax
58fd62:	74 6e                	je     0x58fdd2
58fd64:	56                   	push   %esi
58fd65:	ff 74 24 14          	push   0x14(%esp)
58fd69:	ff 74 24 1c          	push   0x1c(%esp)
58fd6d:	55                   	push   %ebp
58fd6e:	e8 1d ed fd ff       	call   0x56ea90
58fd73:	83 c4 10             	add    $0x10,%esp
58fd76:	85 c0                	test   %eax,%eax
58fd78:	74 4a                	je     0x58fdc4
58fd7a:	53                   	push   %ebx
58fd7b:	56                   	push   %esi
58fd7c:	ff 74 24 24          	push   0x24(%esp)
58fd80:	55                   	push   %ebp
58fd81:	55                   	push   %ebp
58fd82:	e8 59 ee fd ff       	call   0x56ebe0
58fd87:	83 c4 14             	add    $0x14,%esp
58fd8a:	85 c0                	test   %eax,%eax
58fd8c:	74 28                	je     0x58fdb6
58fd8e:	83 7d 04 00          	cmpl   $0x0,0x4(%ebp)
58fd92:	75 7d                	jne    0x58fe11
58fd94:	8b 4c 24 30          	mov    0x30(%esp),%ecx
58fd98:	8b 44 24 34          	mov    0x34(%esp),%eax
58fd9c:	85 c9                	test   %ecx,%ecx
58fd9e:	74 89                	je     0x58fd29
58fda0:	85 c0                	test   %eax,%eax
58fda2:	0f 84 5c ff ff ff    	je     0x58fd04
58fda8:	68 43 01 00 00       	push   $0x143
58fdad:	68 88 70 6c 00       	push   $0x6c7088
58fdb2:	6a 6a                	push   $0x6a
58fdb4:	eb 44                	jmp    0x58fdfa
58fdb6:	68 39 01 00 00       	push   $0x139
58fdbb:	68 88 70 6c 00       	push   $0x6c7088
58fdc0:	6a 03                	push   $0x3
58fdc2:	eb 36                	jmp    0x58fdfa
58fdc4:	68 35 01 00 00       	push   $0x135
58fdc9:	68 88 70 6c 00       	push   $0x6c7088
58fdce:	6a 03                	push   $0x3
58fdd0:	eb 28                	jmp    0x58fdfa
58fdd2:	68 31 01 00 00       	push   $0x131
58fdd7:	68 88 70 6c 00       	push   $0x6c7088
58fddc:	6a 03                	push   $0x3
58fdde:	eb 1a                	jmp    0x58fdfa
58fde0:	68 24 01 00 00       	push   $0x124
58fde5:	68 88 70 6c 00       	push   $0x6c7088
58fdea:	6a 2a                	push   $0x2a
58fdec:	eb 0c                	jmp    0x58fdfa
58fdee:	68 0a 01 00 00       	push   $0x10a
58fdf3:	68 88 70 6c 00       	push   $0x6c7088
58fdf8:	6a 41                	push   $0x41
58fdfa:	6a 65                	push   $0x65
58fdfc:	6a 2a                	push   $0x2a
58fdfe:	e8 9d 16 f1 ff       	call   0x4a14a0
58fe03:	83 c4 14             	add    $0x14,%esp
58fe06:	57                   	push   %edi
58fe07:	e8 24 08 00 00       	call   0x590630
58fe0c:	83 c4 04             	add    $0x4,%esp
58fe0f:	33 ff                	xor    %edi,%edi
58fe11:	85 db                	test   %ebx,%ebx
58fe13:	74 09                	je     0x58fe1e
58fe15:	53                   	push   %ebx
58fe16:	e8 75 7f f4 ff       	call   0x4d7d90
58fe1b:	83 c4 04             	add    $0x4,%esp
58fe1e:	8b 44 24 10          	mov    0x10(%esp),%eax
58fe22:	85 c0                	test   %eax,%eax
58fe24:	74 09                	je     0x58fe2f