58bd17:	f6 c1 04             	test   $0x4,%cl
58bd1a:	74 14                	je     0x58bd30
58bd1c:	85 c0                	test   %eax,%eax
58bd1e:	0f 84 9b 00 00 00    	je     0x58bdbf
58bd24:	ff 76 0c             	push   0xc(%esi)
58bd27:	53                   	push   %ebx
58bd28:	e8 73 d7 00 00       	call   0x5994a0
58bd2d:	83 c4 08             	add    $0x8,%esp
58bd30:	85 c0                	test   %eax,%eax
58bd32:	0f 84 87 00 00 00    	je     0x58bdbf
58bd38:	56                   	push   %esi
58bd39:	ff 74 24 14          	push   0x14(%esp)
58bd3d:	e8 4e 91 f5 ff       	call   0x4e4e90
58bd42:	8b f8                	mov    %eax,%edi
58bd44:	83 c4 08             	add    $0x8,%esp
58bd47:	85 ff                	test   %edi,%edi
58bd49:	78 74                	js     0x58bdbf
58bd4b:	56                   	push   %esi
58bd4c:	6a 00                	push   $0x0
58bd4e:	ff 76 38             	push   0x38(%esi)
58bd51:	68 02 00 01 00       	push   $0x10002
58bd56:	53                   	push   %ebx
58bd57:	e8 24 f8 ff ff       	call   0x58b580
58bd5c:	83 c4 14             	add    $0x14,%esp
58bd5f:	85 c0                	test   %eax,%eax
58bd61:	74 5c                	je     0x58bdbf
58bd63:	f6 44 24 20 04       	testb  $0x4,0x20(%esp)
58bd68:	74 28                	je     0x58bd92
58bd6a:	f6 44 24 24 08       	testb  $0x8,0x24(%esp)
58bd6f:	74 21                	je     0x58bd92
58bd71:	8b 43 7c             	mov    0x7c(%ebx),%eax
58bd74:	80 b8 54 03 00 00 00 	cmpb   $0x0,0x354(%eax)
58bd7b:	74 15                	je     0x58bd92
58bd7d:	85 ed                	test   %ebp,%ebp
58bd7f:	75 3e                	jne    0x58bdbf
58bd81:	57                   	push   %edi
58bd82:	ff 74 24 14          	push   0x14(%esp)
58bd86:	e8 f5 94 f5 ff       	call   0x4e5280
58bd8b:	83 c4 08             	add    $0x8,%esp
58bd8e:	8b e8                	mov    %eax,%ebp
58bd90:	eb 29                	jmp    0x58bdbb
58bd92:	57                   	push   %edi
58bd93:	ff 74 24 14          	push   0x14(%esp)
58bd97:	e8 e4 94 f5 ff       	call   0x4e5280
58bd9c:	83 7c 24 30 00       	cmpl   $0x0,0x30(%esp)
58bda1:	8b f0                	mov    %eax,%esi
58bda3:	74 51                	je     0x58bdf6
58bda5:	ff 76 34             	push   0x34(%esi)
58bda8:	e8 b3 c8 ff ff       	call   0x588660
58bdad:	83 c4 0c             	add    $0xc,%esp
58bdb0:	3b 44 24 2c          	cmp    0x2c(%esp),%eax
58bdb4:	74 2a                	je     0x58bde0
58bdb6:	85 ed                	test   %ebp,%ebp
58bdb8:	0f 44 ee             	cmove  %esi,%ebp
58bdbb:	89 6c 24 1c          	mov    %ebp,0x1c(%esp)
58bdbf:	8b 74 24 18          	mov    0x18(%esp),%esi
58bdc3:	ff 44 24 34          	incl   0x34(%esp)
58bdc7:	56                   	push   %esi
58bdc8:	e8 f3 92 f5 ff       	call   0x4e50c0
58bdcd:	8b 7c 24 38          	mov    0x38(%esp),%edi
58bdd1:	83 c4 04             	add    $0x4,%esp
58bdd4:	3b f8                	cmp    %eax,%edi
58bdd6:	0f 8c 5c fe ff ff    	jl     0x58bc38
58bddc:	8b 74 24 1c          	mov    0x1c(%esp),%esi
58bde0:	ff 74 24 14          	push   0x14(%esp)
58bde4:	e8 37 91 f5 ff       	call   0x4e4f20
58bde9:	83 c4 04             	add    $0x4,%esp
58bdec:	8b c6                	mov    %esi,%eax
58bdee:	5f                   	pop    %edi
58bdef:	5e                   	pop    %esi
58bdf0:	5d                   	pop    %ebp
58bdf1:	5b                   	pop    %ebx
58bdf2:	83 c4 20             	add    $0x20,%esp
58bdf5:	c3                   	ret
58bdf6:	83 c4 08             	add    $0x8,%esp
58bdf9:	eb e5                	jmp    0x58bde0
58bdfb:	33 f6                	xor    %esi,%esi
58bdfd:	eb e1                	jmp    0x58bde0
58bdff:	cc                   	int3
58be00:	56                   	push   %esi
58be01:	8b 74 24 08          	mov    0x8(%esp),%esi
58be05:	56                   	push   %esi
58be06:	e8 25 73 01 00       	call   0x5a3130
58be0b:	8b 46 7c             	mov    0x7c(%esi),%eax
58be0e:	68 13 0d 00 00       	push   $0xd13
58be13:	68 08 6f 66 00       	push   $0x666f08
58be18:	ff b0 1c 02 00 00    	push   0x21c(%eax)
58be1e:	e8 5d 49 f5 ff       	call   0x4e0780
58be23:	8b 46 7c             	mov    0x7c(%esi),%eax
58be26:	68 50 bb 55 00       	push   $0x55bb50
58be2b:	ff b0 24 02 00 00    	push   0x224(%eax)
58be31:	e8 ba 92 f5 ff       	call   0x4e50f0
58be36:	8b 46 7c             	mov    0x7c(%esi),%eax
58be39:	68 15 0d 00 00       	push   $0xd15
58be3e:	68 08 6f 66 00       	push   $0x666f08
58be43:	ff b0 48 02 00 00    	push   0x248(%eax)
58be49:	e8 32 49 f5 ff       	call   0x4e0780
58be4e:	8b 46 7c             	mov    0x7c(%esi),%eax
58be51:	68 16 0d 00 00       	push   $0xd16
58be56:	68 08 6f 66 00       	push   $0x666f08
58be5b:	ff b0 54 02 00 00    	push   0x254(%eax)
58be61:	ff b0 50 02 00 00    	push   0x250(%eax)
58be67:	e8 d4 49 f5 ff       	call   0x4e0840
58be6c:	8b 46 7c             	mov    0x7c(%esi),%eax
58be6f:	68 17 0d 00 00       	push   $0xd17
58be74:	68 08 6f 66 00       	push   $0x666f08
58be79:	ff b0 68 02 00 00    	push   0x268(%eax)
58be7f:	e8 fc 48 f5 ff       	call   0x4e0780
58be84:	8b 46 7c             	mov    0x7c(%esi),%eax
58be87:	83 c4 40             	add    $0x40,%esp
58be8a:	68 18 0d 00 00       	push   $0xd18
58be8f:	68 08 6f 66 00       	push   $0x666f08
58be94:	ff b0 6c 02 00 00    	push   0x26c(%eax)
58be9a:	e8 e1 48 f5 ff       	call   0x4e0780
58be9f:	8b 46 7c             	mov    0x7c(%esi),%eax
58bea2:	ff b0 14 02 00 00    	push   0x214(%eax)
58bea8:	e8 33 4e f6 ff       	call   0x4f0ce0
58bead:	8b 46 7c             	mov    0x7c(%esi),%eax
58beb0:	ff b0 58 03 00 00    	push   0x358(%eax)
58beb6:	e8 25 4e f6 ff       	call   0x4f0ce0
58bebb:	56                   	push   %esi
58bebc:	e8 4f 76 01 00       	call   0x5a3510
58bec1:	8b 46 7c             	mov    0x7c(%esi),%eax
58bec4:	68 21 0d 00 00       	push   $0xd21
58bec9:	68 08 6f 66 00       	push   $0x666f08
58bece:	ff b0 40 03 00 00    	push   0x340(%eax)
58bed4:	e8 a7 48 f5 ff       	call   0x4e0780
58bed9:	8b 46 7c             	mov    0x7c(%esi),%eax
58bedc:	68 22 0d 00 00       	push   $0xd22
58bee1:	68 08 6f 66 00       	push   $0x666f08
58bee6:	ff b0 48 03 00 00    	push   0x348(%eax)
58beec:	e8 8f 48 f5 ff       	call   0x4e0780
58bef1:	68 5c 03 00 00       	push   $0x35c
58bef6:	6a 00                	push   $0x0
58bef8:	ff 76 7c             	push   0x7c(%esi)
58befb:	e8 70 6d 04 00       	call   0x5d2c70
58bf00:	56                   	push   %esi
58bf01:	e8 ca e2 ff ff       	call   0x58a1d0
58bf06:	83 c4 40             	add    $0x40,%esp
58bf09:	85 c0                	test   %eax,%eax
58bf0b:	75 02                	jne    0x58bf0f
58bf0d:	5e                   	pop    %esi
58bf0e:	c3                   	ret
58bf0f:	68 2d 0d 00 00       	push   $0xd2d
58bf14:	68 08 6f 66 00       	push   $0x666f08
58bf19:	ff b6 9c 05 00 00    	push   0x59c(%esi)
58bf1f:	c7 06 00 03 00 00    	movl   $0x300,(%esi)
58bf25:	e8 56 48 f5 ff       	call   0x4e0780
58bf2a:	83 c4 0c             	add    $0xc,%esp
58bf2d:	c7 86 9c 05 00 00 00 	movl   $0x0,0x59c(%esi)
58bf34:	00 00 00
58bf37:	c7 86 a0 05 00 00 00 	movl   $0x0,0x5a0(%esi)
58bf3e:	00 00 00
58bf41:	b8 01 00 00 00       	mov    $0x1,%eax
58bf46:	5e                   	pop    %esi
58bf47:	c3                   	ret
58bf48:	cc                   	int3
58bf49:	cc                   	int3
58bf4a:	cc                   	int3
58bf4b:	cc                   	int3
58bf4c:	cc                   	int3
58bf4d:	cc                   	int3
58bf4e:	cc                   	int3
58bf4f:	cc                   	int3
58bf50:	8b 44 24 08          	mov    0x8(%esp),%eax
58bf54:	53                   	push   %ebx
58bf55:	56                   	push   %esi
58bf56:	83 c0 fd             	add    $0xfffffffd,%eax
58bf59:	33 f6                	xor    %esi,%esi
58bf5b:	57                   	push   %edi
58bf5c:	3d 82 00 00 00       	cmp    $0x82,%eax
58bf61:	0f 87 d4 02 00 00    	ja     0x58c23b
58bf67:	0f b6 80 40 c7 58 00 	movzbl 0x58c740(%eax),%eax
58bf6e:	ff 24 85 98 c6 58 00 	jmp    *0x58c698(,%eax,4)
58bf75:	8b 44 24 10          	mov    0x10(%esp),%eax
58bf79:	5f                   	pop    %edi
58bf7a:	8b 40 7c             	mov    0x7c(%eax),%eax
58bf7d:	8b b0 f8 00 00 00    	mov    0xf8(%eax),%esi
58bf83:	8b c6                	mov    %esi,%eax
58bf85:	5e                   	pop    %esi
58bf86:	5b                   	pop    %ebx
58bf87:	c3                   	ret
58bf88:	8b 44 24 10          	mov    0x10(%esp),%eax
58bf8c:	5f                   	pop    %edi
58bf8d:	8b 40 7c             	mov    0x7c(%eax),%eax
58bf90:	8b b0 f8 00 00 00    	mov    0xf8(%eax),%esi
58bf96:	c7 80 f8 00 00 00 00 	movl   $0x0,0xf8(%eax)
58bf9d:	00 00 00
58bfa0:	8b c6                	mov    %esi,%eax
58bfa2:	5e                   	pop    %esi
58bfa3:	5b                   	pop    %ebx
58bfa4:	c3                   	ret
58bfa5:	8b 44 24 10          	mov    0x10(%esp),%eax
58bfa9:	5f                   	pop    %edi
58bfaa:	8b 40 7c             	mov    0x7c(%eax),%eax
58bfad:	8b b0 f4 00 00 00    	mov    0xf4(%eax),%esi
58bfb3:	8b c6                	mov    %esi,%eax
58bfb5:	5e                   	pop    %esi
58bfb6:	5b                   	pop    %ebx
58bfb7:	c3                   	ret
58bfb8:	8b 44 24 10          	mov    0x10(%esp),%eax
58bfbc:	5f                   	pop    %edi
58bfbd:	8b 40 7c             	mov    0x7c(%eax),%eax
58bfc0:	8b 30                	mov    (%eax),%esi
58bfc2:	8b c6                	mov    %esi,%eax
58bfc4:	5e                   	pop    %esi
58bfc5:	5b                   	pop    %ebx
58bfc6:	c3                   	ret
58bfc7:	8b 7c 24 1c          	mov    0x1c(%esp),%edi
58bfcb:	85 ff                	test   %edi,%edi
58bfcd:	75 21                	jne    0x58bff0
58bfcf:	68 58 0d 00 00       	push   $0xd58
58bfd4:	68 08 6f 66 00       	push   $0x666f08
58bfd9:	6a 43                	push   $0x43
58bfdb:	68 d5 00 00 00       	push   $0xd5
58bfe0:	6a 14                	push   $0x14
58bfe2:	e8 99 cf f4 ff       	call   0x4d8f80
58bfe7:	83 c4 14             	add    $0x14,%esp
58bfea:	5f                   	pop    %edi
58bfeb:	5e                   	pop    %esi
58bfec:	33 c0                	xor    %eax,%eax
58bfee:	5b                   	pop    %ebx
58bfef:	c3                   	ret
58bff0:	e8 5b 4f f6 ff       	call   0x4f0f50
58bff5:	8b f0                	mov    %eax,%esi
58bff7:	57                   	push   %edi
58bff8:	56                   	push   %esi
58bff9:	e8 52 51 f6 ff       	call   0x4f1150
58bffe:	83 c4 08             	add    $0x8,%esp
58c001:	85 c0                	test   %eax,%eax
58c003:	7f 17                	jg     0x58c01c
58c005:	56                   	push   %esi
58c006:	e8 d5 4c f6 ff       	call   0x4f0ce0
58c00b:	83 c4 04             	add    $0x4,%esp
58c00e:	68 5d 0d 00 00       	push   $0xd5d
58c013:	68 08 6f 66 00       	push   $0x666f08
58c018:	6a 41                	push   $0x41
58c01a:	eb bf                	jmp    0x58bfdb
58c01c:	85 f6                	test   %esi,%esi
58c01e:	75 0e                	jne    0x58c02e
58c020:	68 5d 0d 00 00       	push   $0xd5d
58c025:	68 08 6f 66 00       	push   $0x666f08
58c02a:	6a 41                	push   $0x41
58c02c:	eb ad                	jmp    0x58bfdb
58c02e:	56                   	push   %esi
58c02f:	6a 00                	push   $0x0
58c031:	56                   	push   %esi
58c032:	e8 e9 50 f6 ff       	call   0x4f1120
58c037:	8b 7c 24 1c          	mov    0x1c(%esp),%edi
58c03b:	83 c4 04             	add    $0x4,%esp
58c03e:	50                   	push   %eax
58c03f:	68 07 00 04 00       	push   $0x40007
58c044:	57                   	push   %edi
58c045:	e8 36 f5 ff ff       	call   0x58b580
58c04a:	83 c4 14             	add    $0x14,%esp
58c04d:	85 c0                	test   %eax,%eax
58c04f:	75 2a                	jne    0x58c07b
58c051:	68 62 0d 00 00       	push   $0xd62
58c056:	68 08 6f 66 00       	push   $0x666f08
58c05b:	68 8a 01 00 00       	push   $0x18a
58c060:	68 d5 00 00 00       	push   $0xd5
58c065:	6a 14                	push   $0x14
58c067:	e8 14 cf f4 ff       	call   0x4d8f80
58c06c:	56                   	push   %esi
58c06d:	e8 6e 4c f6 ff       	call   0x4f0ce0
58c072:	83 c4 18             	add    $0x18,%esp
58c075:	33 c0                	xor    %eax,%eax
58c077:	5f                   	pop    %edi
58c078:	5e                   	pop    %esi
58c079:	5b                   	pop    %ebx
58c07a:	c3                   	ret
58c07b:	8b 87 04 04 00 00    	mov    0x404(%edi),%eax
58c081:	ff 70 04             	push   0x4(%eax)
58c084:	e8 57 4c f6 ff       	call   0x4f0ce0
58c089:	8b 87 04 04 00 00    	mov    0x404(%edi),%eax
58c08f:	83 c4 04             	add    $0x4,%esp
58c092:	89 70 04             	mov    %esi,0x4(%eax)
58c095:	be 01 00 00 00       	mov    $0x1,%esi
58c09a:	5f                   	pop    %edi
58c09b:	8b c6                	mov    %esi,%eax
58c09d:	5e                   	pop    %esi
58c09e:	5b                   	pop    %ebx
58c09f:	c3                   	ret
58c0a0:	68 6d 0d 00 00       	push   $0xd6d
58c0a5:	68 08 6f 66 00       	push   $0x666f08
58c0aa:	6a 42                	push   $0x42
58c0ac:	e9 2a ff ff ff       	jmp    0x58bfdb
58c0b1:	8b 44 24 10          	mov    0x10(%esp),%eax
58c0b5:	5f                   	pop    %edi
58c0b6:	5e                   	pop    %esi
58c0b7:	5b                   	pop    %ebx
58c0b8:	8b 88 04 04 00 00    	mov    0x404(%eax),%ecx
58c0be:	8b 44 24 0c          	mov    0xc(%esp),%eax
58c0c2:	89 41 0c             	mov    %eax,0xc(%ecx)
58c0c5:	b8 01 00 00 00       	mov    $0x1,%eax
58c0ca:	c3                   	ret
58c0cb:	8b 44 24 1c          	mov    0x1c(%esp),%eax
58c0cf:	85 c0                	test   %eax,%eax
58c0d1:	75 0a                	jne    0x58c0dd
58c0d3:	68 7b 0d 00 00       	push   $0xd7b
58c0d8:	e9 f7 fe ff ff       	jmp    0x58bfd4
58c0dd:	50                   	push   %eax
58c0de:	e8 5d b1 f5 ff       	call   0x4e7240
58c0e3:	83 c4 04             	add    $0x4,%esp
58c0e6:	85 c0                	test   %eax,%eax
58c0e8:	75 11                	jne    0x58c0fb
58c0ea:	68 80 0d 00 00       	push   $0xd80
58c0ef:	68 08 6f 66 00       	push   $0x666f08
58c0f4:	6a 7c                	push   $0x7c
58c0f6:	e9 e0 fe ff ff       	jmp    0x58bfdb
58c0fb:	50                   	push   %eax
58c0fc:	e8 af 41 f6 ff       	call   0x4f02b0
58c101:	83 c4 04             	add    $0x4,%esp
58c104:	89 44 24 14          	mov    %eax,0x14(%esp)
58c108:	85 c0                	test   %eax,%eax
58c10a:	0f 84 da fe ff ff    	je     0x58bfea
58c110:	6a 01                	push   $0x1
58c112:	8d 44 24 18          	lea    0x18(%esp),%eax
58c116:	50                   	push   %eax
58c117:	8b 4c 24 18          	mov    0x18(%esp),%ecx
58c11b:	8d 81 70 05 00 00    	lea    0x570(%ecx),%eax
58c121:	50                   	push   %eax
58c122:	8d 81 74 05 00 00    	lea    0x574(%ecx),%eax
58c128:	50                   	push   %eax
58c129:	e8 92 df 00 00       	call   0x59a0c0
58c12e:	83 c4 10             	add    $0x10,%esp
58c131:	5f                   	pop    %edi
58c132:	5e                   	pop    %esi
58c133:	5b                   	pop    %ebx
58c134:	c3                   	ret
58c135:	39 74 24 18          	cmp    %esi,0x18(%esp)
58c139:	0f 85 91 00 00 00    	jne    0x58c1d0
58c13f:	8b 7c 24 10          	mov    0x10(%esp),%edi
58c143:	68 99 0d 00 00       	push   $0xd99
58c148:	68 08 6f 66 00       	push   $0x666f08
58c14d:	ff b7 38 05 00 00    	push   0x538(%edi)
58c153:	e8 28 46 f5 ff       	call   0x4e0780
58c158:	8b 54 24 28          	mov    0x28(%esp),%edx
58c15c:	83 c4 0c             	add    $0xc,%esp
58c15f:	89 b7 38 05 00 00    	mov    %esi,0x538(%edi)
58c165:	be 01 00 00 00       	mov    $0x1,%esi
58c16a:	85 d2                	test   %edx,%edx
58c16c:	0f 84 c9 00 00 00    	je     0x58c23b
58c172:	8b ca                	mov    %edx,%ecx
58c174:	8d 59 01             	lea    0x1(%ecx),%ebx
58c177:	8a 01                	mov    (%ecx),%al
58c179:	41                   	inc    %ecx
58c17a:	84 c0                	test   %al,%al
58c17c:	75 f9                	jne    0x58c177
58c17e:	2b cb                	sub    %ebx,%ecx