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
58fe26:	50                   	push   %eax
58fe27:	e8 44 2f f2 ff       	call   0x4b2d70
58fe2c:	83 c4 04             	add    $0x4,%esp
58fe2f:	8b 44 24 14          	mov    0x14(%esp),%eax
58fe33:	85 c0                	test   %eax,%eax
58fe35:	74 09                	je     0x58fe40
58fe37:	50                   	push   %eax
58fe38:	e8 33 2f f2 ff       	call   0x4b2d70
58fe3d:	83 c4 04             	add    $0x4,%esp
58fe40:	85 f6                	test   %esi,%esi
58fe42:	74 09                	je     0x58fe4d
58fe44:	56                   	push   %esi
58fe45:	e8 96 33 f2 ff       	call   0x4b31e0
58fe4a:	83 c4 04             	add    $0x4,%esp
58fe4d:	8b 44 24 18          	mov    0x18(%esp),%eax
58fe51:	85 c0                	test   %eax,%eax
58fe53:	74 09                	je     0x58fe5e
58fe55:	50                   	push   %eax
58fe56:	e8 15 2f f2 ff       	call   0x4b2d70
58fe5b:	83 c4 04             	add    $0x4,%esp
58fe5e:	8b c7                	mov    %edi,%eax
58fe60:	5f                   	pop    %edi
58fe61:	5e                   	pop    %esi
58fe62:	5d                   	pop    %ebp
58fe63:	5b                   	pop    %ebx
58fe64:	83 c4 14             	add    $0x14,%esp
58fe67:	c3                   	ret
58fe68:	68 fd 00 00 00       	push   $0xfd
58fe6d:	68 88 70 6c 00       	push   $0x6c7088
58fe72:	6a 43                	push   $0x43
58fe74:	6a 65                	push   $0x65
58fe76:	6a 2a                	push   $0x2a
58fe78:	e8 23 16 f1 ff       	call   0x4a14a0
58fe7d:	83 c4 14             	add    $0x14,%esp
58fe80:	33 c0                	xor    %eax,%eax
58fe82:	5f                   	pop    %edi
58fe83:	5e                   	pop    %esi
58fe84:	5d                   	pop    %ebp
58fe85:	5b                   	pop    %ebx
58fe86:	83 c4 14             	add    $0x14,%esp
58fe89:	c3                   	ret
58fe8a:	cc                   	int3
58fe8b:	cc                   	int3
58fe8c:	cc                   	int3
58fe8d:	cc                   	int3
58fe8e:	cc                   	int3
58fe8f:	cc                   	int3
58fe90:	b8 0c 00 00 00       	mov    $0xc,%eax
58fe95:	e8 56 16 05 00       	call   0x5e14f0
58fe9a:	8b 44 24 10          	mov    0x10(%esp),%eax
58fe9e:	c7 44 24 04 00 00 00 	movl   $0x0,0x4(%esp)
58fea5:	00
58fea6:	56                   	push   %esi
58fea7:	85 c0                	test   %eax,%eax
58fea9:	0f 84 6d 03 00 00    	je     0x59021c
58feaf:	50                   	push   %eax
58feb0:	e8 2b 16 f0 ff       	call   0x4914e0
58feb5:	8b f0                	mov    %eax,%esi
58feb7:	83 c4 04             	add    $0x4,%esp
58feba:	89 74 24 0c          	mov    %esi,0xc(%esp)
58febe:	85 f6                	test   %esi,%esi
58fec0:	0f 84 56 03 00 00    	je     0x59021c
58fec6:	8b 44 24 18          	mov    0x18(%esp),%eax
58feca:	55                   	push   %ebp
58fecb:	85 c0                	test   %eax,%eax
58fecd:	75 28                	jne    0x58fef7
58fecf:	e8 4c 7f f4 ff       	call   0x4d7e20
58fed4:	8b e8                	mov    %eax,%ebp
58fed6:	85 ed                	test   %ebp,%ebp
58fed8:	75 1f                	jne    0x58fef9
58feda:	6a 6a                	push   $0x6a
58fedc:	68 88 70 6c 00       	push   $0x6c7088
58fee1:	6a 41                	push   $0x41
58fee3:	6a 67                	push   $0x67
58fee5:	6a 2a                	push   $0x2a
58fee7:	e8 b4 15 f1 ff       	call   0x4a14a0
58feec:	83 c4 14             	add    $0x14,%esp
58feef:	33 c0                	xor    %eax,%eax
58fef1:	5d                   	pop    %ebp
58fef2:	5e                   	pop    %esi
58fef3:	83 c4 0c             	add    $0xc,%esp
58fef6:	c3                   	ret
58fef7:	8b e8                	mov    %eax,%ebp
58fef9:	53                   	push   %ebx
58fefa:	57                   	push   %edi
58fefb:	e8 10 34 f2 ff       	call   0x4b3310
58ff00:	8b f8                	mov    %eax,%edi
58ff02:	e8 09 34 f2 ff       	call   0x4b3310
58ff07:	89 44 24 10          	mov    %eax,0x10(%esp)
58ff0b:	e8 00 34 f2 ff       	call   0x4b3310
58ff10:	8b d8                	mov    %eax,%ebx
58ff12:	e8 f9 33 f2 ff       	call   0x4b3310
58ff17:	89 44 24 20          	mov    %eax,0x20(%esp)
58ff1b:	85 ff                	test   %edi,%edi
58ff1d:	0f 84 7b 02 00 00    	je     0x59019e
58ff23:	8b 4c 24 10          	mov    0x10(%esp),%ecx
58ff27:	85 c9                	test   %ecx,%ecx
58ff29:	0f 84 6f 02 00 00    	je     0x59019e
58ff2f:	85 db                	test   %ebx,%ebx
58ff31:	0f 84 67 02 00 00    	je     0x59019e
58ff37:	85 c0                	test   %eax,%eax
58ff39:	0f 84 5f 02 00 00    	je     0x59019e
58ff3f:	56                   	push   %esi
58ff40:	e8 ab c3 fe ff       	call   0x57c2f0
58ff45:	83 c4 04             	add    $0x4,%esp
58ff48:	89 44 24 14          	mov    %eax,0x14(%esp)
58ff4c:	85 c0                	test   %eax,%eax
58ff4e:	75 0e                	jne    0x58ff5e
58ff50:	6a 79                	push   $0x79
58ff52:	68 88 70 6c 00       	push   $0x6c7088
58ff57:	6a 10                	push   $0x10
58ff59:	e9 49 02 00 00       	jmp    0x5901a7
58ff5e:	55                   	push   %ebp
58ff5f:	53                   	push   %ebx
58ff60:	56                   	push   %esi
58ff61:	e8 da ba fe ff       	call   0x57ba40
58ff66:	83 c4 0c             	add    $0xc,%esp
58ff69:	85 c0                	test   %eax,%eax
58ff6b:	75 13                	jne    0x58ff80
58ff6d:	6a 7d                	push   $0x7d
58ff6f:	68 88 70 6c 00       	push   $0x6c7088
58ff74:	6a 10                	push   $0x10
58ff76:	e9 2c 02 00 00       	jmp    0x5901a7
58ff7b:	0f 1f 44 00 00       	nopl   0x0(%eax,%eax,1)
58ff80:	53                   	push   %ebx
58ff81:	57                   	push   %edi
58ff82:	e8 09 e7 fd ff       	call   0x56e690
58ff87:	83 c4 08             	add    $0x8,%esp
58ff8a:	85 c0                	test   %eax,%eax
58ff8c:	0f 84 fe 01 00 00    	je     0x590190
58ff92:	83 7f 04 00          	cmpl   $0x0,0x4(%edi)
58ff96:	74 e8                	je     0x58ff80
58ff98:	53                   	push   %ebx
58ff99:	57                   	push   %edi
58ff9a:	57                   	push   %edi
58ff9b:	e8 30 81 f4 ff       	call   0x4d80d0
58ffa0:	83 c4 0c             	add    $0xc,%esp
58ffa3:	85 c0                	test   %eax,%eax
58ffa5:	0f 84 08 02 00 00    	je     0x5901b3
58ffab:	53                   	push   %ebx
58ffac:	e8 bf 33 f2 ff       	call   0x4b3370
58ffb1:	57                   	push   %edi
58ffb2:	8b f0                	mov    %eax,%esi
58ffb4:	e8 b7 33 f2 ff       	call   0x4b3370
58ffb9:	83 c4 08             	add    $0x8,%esp
58ffbc:	3b c6                	cmp    %esi,%eax
58ffbe:	7f 13                	jg     0x58ffd3
58ffc0:	53                   	push   %ebx
58ffc1:	57                   	push   %edi
58ffc2:	57                   	push   %edi
58ffc3:	e8 08 81 f4 ff       	call   0x4d80d0
58ffc8:	83 c4 0c             	add    $0xc,%esp
58ffcb:	85 c0                	test   %eax,%eax
58ffcd:	0f 84 e0 01 00 00    	je     0x5901b3
58ffd3:	8b 74 24 18          	mov    0x18(%esp),%esi
58ffd7:	55                   	push   %ebp
58ffd8:	6a 00                	push   $0x0
58ffda:	6a 00                	push   $0x0
58ffdc:	57                   	push   %edi
58ffdd:	ff 74 24 24          	push   0x24(%esp)
58ffe1:	56                   	push   %esi
58ffe2:	e8 89 c2 fe ff       	call   0x57c270
58ffe7:	83 c4 18             	add    $0x18,%esp
58ffea:	85 c0                	test   %eax,%eax
58ffec:	0f 84 90 01 00 00    	je     0x590182
58fff2:	56                   	push   %esi
58fff3:	e8 28 10 f0 ff       	call   0x491020
58fff8:	50                   	push   %eax
58fff9:	e8 e2 14 f0 ff       	call   0x4914e0
58fffe:	83 c4 08             	add    $0x8,%esp
590001:	55                   	push   %ebp
590002:	6a 00                	push   $0x0
590004:	ff 74 24 28          	push   0x28(%esp)
590008:	ff 74 24 20          	push   0x20(%esp)
59000c:	56                   	push   %esi