57ecf0:	57                   	push   %edi
57ecf1:	ff 75 04             	push   0x4(%ebp)
57ecf4:	e8 87 65 f6 ff       	call   0x4e5280
57ecf9:	8b f0                	mov    %eax,%esi
57ecfb:	83 c4 08             	add    $0x8,%esp
57ecfe:	83 3e 01             	cmpl   $0x1,(%esi)
57ed01:	75 5e                	jne    0x57ed61
57ed03:	ff 76 04             	push   0x4(%esi)
57ed06:	e8 95 88 f9 ff       	call   0x5175a0
57ed0b:	50                   	push   %eax
57ed0c:	ff 74 24 20          	push   0x20(%esp)
57ed10:	e8 3b 8e fd ff       	call   0x557b50
57ed15:	83 c4 0c             	add    $0xc,%esp
57ed18:	85 c0                	test   %eax,%eax
57ed1a:	75 45                	jne    0x57ed61
57ed1c:	ff 76 04             	push   0x4(%esi)
57ed1f:	8b 43 24             	mov    0x24(%ebx),%eax
57ed22:	ff 74 24 18          	push   0x18(%esp)
57ed26:	53                   	push   %ebx
57ed27:	ff d0                	call   *%eax
57ed29:	83 c4 0c             	add    $0xc,%esp
57ed2c:	85 c0                	test   %eax,%eax
57ed2e:	74 21                	je     0x57ed51
57ed30:	8b 46 04             	mov    0x4(%esi),%eax
57ed33:	8b 4c 24 1c          	mov    0x1c(%esp),%ecx
57ed37:	6a ff                	push   $0xffffffff
57ed39:	50                   	push   %eax
57ed3a:	53                   	push   %ebx
57ed3b:	89 01                	mov    %eax,(%ecx)
57ed3d:	c7 44 24 1c 01 00 00 	movl   $0x1,0x1c(%esp)
57ed44:	00
57ed45:	e8 56 97 ff ff       	call   0x5784a0
57ed4a:	83 c4 0c             	add    $0xc,%esp
57ed4d:	85 c0                	test   %eax,%eax
57ed4f:	75 10                	jne    0x57ed61
57ed51:	ff 75 04             	push   0x4(%ebp)
57ed54:	47                   	inc    %edi
57ed55:	e8 66 63 f6 ff       	call   0x4e50c0
57ed5a:	83 c4 04             	add    $0x4,%esp
57ed5d:	3b f8                	cmp    %eax,%edi
57ed5f:	7c 8f                	jl     0x57ecf0
57ed61:	8b 74 24 10          	mov    0x10(%esp),%esi
57ed65:	8b 5c 24 1c          	mov    0x1c(%esp),%ebx
57ed69:	8b 03                	mov    (%ebx),%eax
57ed6b:	85 c0                	test   %eax,%eax
57ed6d:	74 12                	je     0x57ed81
57ed6f:	50                   	push   %eax
57ed70:	e8 3b 21 fa ff       	call   0x520eb0
57ed75:	83 c4 04             	add    $0x4,%esp
57ed78:	85 c0                	test   %eax,%eax
57ed7a:	75 05                	jne    0x57ed81
57ed7c:	89 03                	mov    %eax,(%ebx)
57ed7e:	83 ce ff             	or     $0xffffffff,%esi
57ed81:	ff 75 48             	push   0x48(%ebp)
57ed84:	e8 b7 32 f6 ff       	call   0x4e2040
57ed89:	83 c4 04             	add    $0x4,%esp
57ed8c:	8b c6                	mov    %esi,%eax
57ed8e:	8b 8c 24 f8 00 00 00 	mov    0xf8(%esp),%ecx
57ed95:	5d                   	pop    %ebp
57ed96:	5f                   	pop    %edi
57ed97:	5e                   	pop    %esi
57ed98:	5b                   	pop    %ebx
57ed99:	33 cc                	xor    %esp,%ecx
57ed9b:	e8 86 2c 05 00       	call   0x5d1a26
57eda0:	81 c4 ec 00 00 00    	add    $0xec,%esp
57eda6:	c3                   	ret
57eda7:	cc                   	int3
57eda8:	cc                   	int3
57eda9:	cc                   	int3
57edaa:	cc                   	int3
57edab:	cc                   	int3
57edac:	cc                   	int3
57edad:	cc                   	int3
57edae:	cc                   	int3
57edaf:	cc                   	int3
57edb0:	b8 08 00 00 00       	mov    $0x8,%eax
57edb5:	e8 f6 29 05 00       	call   0x5d17b0
57edba:	8b 44 24 0c          	mov    0xc(%esp),%eax
57edbe:	53                   	push   %ebx
57edbf:	55                   	push   %ebp
57edc0:	56                   	push   %esi
57edc1:	8b 18                	mov    (%eax),%ebx
57edc3:	57                   	push   %edi
57edc4:	85 db                	test   %ebx,%ebx
57edc6:	0f 84 02 01 00 00    	je     0x57eece
57edcc:	c7 44 24 10 00 00 00 	movl   $0x0,0x10(%esp)
57edd3:	00
57edd4:	c7 44 24 14 00 00 00 	movl   $0x0,0x14(%esp)
57eddb:	00
57eddc:	ff 73 48             	push   0x48(%ebx)
57eddf:	e8 dc 31 f6 ff       	call   0x4e1fc0
57ede4:	8b 6c 24 24          	mov    0x24(%esp),%ebp
57ede8:	8b 73 04             	mov    0x4(%ebx),%esi
57edeb:	6a 00                	push   $0x0
57eded:	ff 74 24 2c          	push   0x2c(%esp)
57edf1:	55                   	push   %ebp
57edf2:	56                   	push   %esi
57edf3:	e8 c8 04 00 00       	call   0x57f2c0
57edf8:	83 c4 14             	add    $0x14,%esp
57edfb:	83 f8 ff             	cmp    $0xffffffff,%eax
57edfe:	75 0f                	jne    0x57ee0f
57ee00:	ff 73 48             	push   0x48(%ebx)
57ee03:	33 ff                	xor    %edi,%edi
57ee05:	e8 36 32 f6 ff       	call   0x4e2040
57ee0a:	83 c4 04             	add    $0x4,%esp
57ee0d:	eb 1d                	jmp    0x57ee2c
57ee0f:	50                   	push   %eax
57ee10:	56                   	push   %esi
57ee11:	e8 6a 64 f6 ff       	call   0x4e5280
57ee16:	ff 73 48             	push   0x48(%ebx)
57ee19:	8b f8                	mov    %eax,%edi
57ee1b:	e8 20 32 f6 ff       	call   0x4e2040
57ee20:	83 c4 0c             	add    $0xc,%esp
57ee23:	85 ff                	test   %edi,%edi
57ee25:	74 05                	je     0x57ee2c
57ee27:	83 fd 02             	cmp    $0x2,%ebp
57ee2a:	75 5c                	jne    0x57ee88
57ee2c:	ff 73 08             	push   0x8(%ebx)
57ee2f:	33 f6                	xor    %esi,%esi
57ee31:	e8 8a 62 f6 ff       	call   0x4e50c0
57ee36:	83 c4 04             	add    $0x4,%esp
57ee39:	85 c0                	test   %eax,%eax
57ee3b:	7e 47                	jle    0x57ee84
57ee3d:	0f 1f 00             	nopl   (%eax)
57ee40:	56                   	push   %esi
57ee41:	ff 73 08             	push   0x8(%ebx)
57ee44:	e8 37 64 f6 ff       	call   0x4e5280
57ee49:	83 c4 08             	add    $0x8,%esp
57ee4c:	8b 48 08             	mov    0x8(%eax),%ecx
57ee4f:	85 c9                	test   %ecx,%ecx
57ee51:	74 21                	je     0x57ee74
57ee53:	8b 49 18             	mov    0x18(%ecx),%ecx
57ee56:	85 c9                	test   %ecx,%ecx
57ee58:	74 1a                	je     0x57ee74
57ee5a:	83 78 04 00          	cmpl   $0x0,0x4(%eax)
57ee5e:	75 14                	jne    0x57ee74
57ee60:	8d 54 24 10          	lea    0x10(%esp),%edx
57ee64:	52                   	push   %edx
57ee65:	ff 74 24 28          	push   0x28(%esp)
57ee69:	55                   	push   %ebp
57ee6a:	50                   	push   %eax
57ee6b:	ff d1                	call   *%ecx
57ee6d:	83 c4 10             	add    $0x10,%esp
57ee70:	85 c0                	test   %eax,%eax
57ee72:	75 2a                	jne    0x57ee9e
57ee74:	ff 73 08             	push   0x8(%ebx)
57ee77:	46                   	inc    %esi
57ee78:	e8 43 62 f6 ff       	call   0x4e50c0
57ee7d:	83 c4 04             	add    $0x4,%esp
57ee80:	3b f0                	cmp    %eax,%esi
57ee82:	7c bc                	jl     0x57ee40
57ee84:	85 ff                	test   %edi,%edi
57ee86:	74 46                	je     0x57eece
57ee88:	8b 07                	mov    (%edi),%eax
57ee8a:	83 e8 01             	sub    $0x1,%eax
57ee8d:	74 15                	je     0x57eea4
57ee8f:	83 e8 01             	sub    $0x1,%eax
57ee92:	75 1f                	jne    0x57eeb3
57ee94:	ff 77 04             	push   0x4(%edi)
57ee97:	e8 b4 2b ff ff       	call   0x571a50
57ee9c:	eb 0e                	jmp    0x57eeac
57ee9e:	8d 7c 24 10          	lea    0x10(%esp),%edi
57eea2:	eb e4                	jmp    0x57ee88
57eea4:	ff 77 04             	push   0x4(%edi)
57eea7:	e8 04 20 fa ff       	call   0x520eb0
57eeac:	83 c4 04             	add    $0x4,%esp
57eeaf:	85 c0                	test   %eax,%eax
57eeb1:	74 1b                	je     0x57eece
57eeb3:	8b 4c 24 28          	mov    0x28(%esp),%ecx
57eeb7:	8b 07                	mov    (%edi),%eax
57eeb9:	89 01                	mov    %eax,(%ecx)
57eebb:	8b 47 04             	mov    0x4(%edi),%eax
57eebe:	5f                   	pop    %edi
57eebf:	5e                   	pop    %esi
57eec0:	5d                   	pop    %ebp
57eec1:	89 41 04             	mov    %eax,0x4(%ecx)
57eec4:	b8 01 00 00 00       	mov    $0x1,%eax
57eec9:	5b                   	pop    %ebx
57eeca:	83 c4 08             	add    $0x8,%esp
57eecd:	c3                   	ret
57eece:	5f                   	pop    %edi
57eecf:	5e                   	pop    %esi
57eed0:	5d                   	pop    %ebp
57eed1:	33 c0                	xor    %eax,%eax
57eed3:	5b                   	pop    %ebx
57eed4:	83 c4 08             	add    $0x8,%esp
57eed7:	c3                   	ret
57eed8:	cc                   	int3
57eed9:	cc                   	int3
57eeda:	cc                   	int3
57eedb:	cc                   	int3
57eedc:	cc                   	int3
57eedd:	cc                   	int3
57eede:	cc                   	int3
57eedf:	cc                   	int3
57eee0:	6a 00                	push   $0x0
57eee2:	ff 74 24 0c          	push   0xc(%esp)
57eee6:	ff 74 24 0c          	push   0xc(%esp)
57eeea:	e8 01 05 00 00       	call   0x57f3f0
57eeef:	83 c4 0c             	add    $0xc,%esp
57eef2:	85 c0                	test   %eax,%eax
57eef4:	75 1b                	jne    0x57ef11
57eef6:	68 73 01 00 00       	push   $0x173
57eefb:	68 08 b5 65 00       	push   $0x65b508
57ef00:	6a 41                	push   $0x41
57ef02:	6a 7c                	push   $0x7c
57ef04:	6a 0b                	push   $0xb
57ef06:	e8 75 a0 f5 ff       	call   0x4d8f80
57ef0b:	83 c4 14             	add    $0x14,%esp
57ef0e:	33 c0                	xor    %eax,%eax
57ef10:	c3                   	ret
57ef11:	b8 01 00 00 00       	mov    $0x1,%eax
57ef16:	c3                   	ret
57ef17:	cc                   	int3
57ef18:	cc                   	int3
57ef19:	cc                   	int3
57ef1a:	cc                   	int3
57ef1b:	cc                   	int3
57ef1c:	cc                   	int3
57ef1d:	cc                   	int3
57ef1e:	cc                   	int3
57ef1f:	cc                   	int3
57ef20:	6a 01                	push   $0x1
57ef22:	ff 74 24 0c          	push   0xc(%esp)
57ef26:	ff 74 24 0c          	push   0xc(%esp)
57ef2a:	e8 c1 04 00 00       	call   0x57f3f0
57ef2f:	83 c4 0c             	add    $0xc,%esp
57ef32:	85 c0                	test   %eax,%eax
57ef34:	75 1b                	jne    0x57ef51
57ef36:	68 7c 01 00 00       	push   $0x17c
57ef3b:	68 08 b5 65 00       	push   $0x65b508
57ef40:	6a 41                	push   $0x41
57ef42:	6a 7d                	push   $0x7d
57ef44:	6a 0b                	push   $0xb
57ef46:	e8 35 a0 f5 ff       	call   0x4d8f80
57ef4b:	83 c4 14             	add    $0x14,%esp
57ef4e:	33 c0                	xor    %eax,%eax
57ef50:	c3                   	ret
57ef51:	b8 01 00 00 00       	mov    $0x1,%eax
57ef56:	c3                   	ret
57ef57:	cc                   	int3
57ef58:	cc                   	int3
57ef59:	cc                   	int3
57ef5a:	cc                   	int3
57ef5b:	cc                   	int3
57ef5c:	cc                   	int3
57ef5d:	cc                   	int3
57ef5e:	cc                   	int3
57ef5f:	cc                   	int3
57ef60:	53                   	push   %ebx
57ef61:	55                   	push   %ebp
57ef62:	8b 6c 24 0c          	mov    0xc(%esp),%ebp
57ef66:	56                   	push   %esi
57ef67:	57                   	push   %edi
57ef68:	33 f6                	xor    %esi,%esi
57ef6a:	8b 7d 08             	mov    0x8(%ebp),%edi
57ef6d:	57                   	push   %edi
57ef6e:	e8 4d 61 f6 ff       	call   0x4e50c0
57ef73:	8b 5c 24 1c          	mov    0x1c(%esp),%ebx
57ef77:	83 c4 04             	add    $0x4,%esp
57ef7a:	85 c0                	test   %eax,%eax
57ef7c:	7e 23                	jle    0x57efa1
57ef7e:	66 90                	xchg   %ax,%ax
57ef80:	56                   	push   %esi
57ef81:	57                   	push   %edi
57ef82:	e8 f9 62 f6 ff       	call   0x4e5280
57ef87:	83 c4 08             	add    $0x8,%esp
57ef8a:	3b 58 08             	cmp    0x8(%eax),%ebx
57ef8d:	0f 84 e0 00 00 00    	je     0x57f073
57ef93:	57                   	push   %edi
57ef94:	46                   	inc    %esi
57ef95:	e8 26 61 f6 ff       	call   0x4e50c0
57ef9a:	83 c4 04             	add    $0x4,%esp
57ef9d:	3b f0                	cmp    %eax,%esi
57ef9f:	7c df                	jl     0x57ef80
57efa1:	6a 14                	push   $0x14
57efa3:	68 08 b5 65 00       	push   $0x65b508
57efa8:	6a 14                	push   $0x14
57efaa:	e8 91 1a f6 ff       	call   0x4e0a40
57efaf:	8b f0                	mov    %eax,%esi
57efb1:	83 c4 0c             	add    $0xc,%esp
57efb4:	85 f6                	test   %esi,%esi
57efb6:	75 1a                	jne    0x57efd2
57efb8:	6a 17                	push   $0x17
57efba:	68 08 b5 65 00       	push   $0x65b508
57efbf:	6a 41                	push   $0x41
57efc1:	68 9b 00 00 00       	push   $0x9b
57efc6:	6a 0b                	push   $0xb
57efc8:	e8 b3 9f f5 ff       	call   0x4d8f80
57efcd:	83 c4 14             	add    $0x14,%esp
57efd0:	eb 24                	jmp    0x57eff6
57efd2:	89 5e 08             	mov    %ebx,0x8(%esi)
57efd5:	8b 43 04             	mov    0x4(%ebx),%eax
57efd8:	85 c0                	test   %eax,%eax
57efda:	74 3c                	je     0x57f018
57efdc:	56                   	push   %esi
57efdd:	ff d0                	call   *%eax
57efdf:	83 c4 04             	add    $0x4,%esp
57efe2:	85 c0                	test   %eax,%eax
57efe4:	75 32                	jne    0x57f018
57efe6:	6a 1d                	push   $0x1d
57efe8:	68 08 b5 65 00       	push   $0x65b508
57efed:	56                   	push   %esi
57efee:	e8 8d 17 f6 ff       	call   0x4e0780
57eff3:	83 c4 0c             	add    $0xc,%esp
57eff6:	68 05 01 00 00       	push   $0x105
57effb:	68 08 b5 65 00       	push   $0x65b508
57f000:	6a 41                	push   $0x41
57f002:	68 9d 00 00 00       	push   $0x9d
57f007:	6a 0b                	push   $0xb
57f009:	e8 72 9f f5 ff       	call   0x4d8f80
57f00e:	83 c4 14             	add    $0x14,%esp
57f011:	33 c0                	xor    %eax,%eax
57f013:	5f                   	pop    %edi
57f014:	5e                   	pop    %esi
57f015:	5d                   	pop    %ebp
57f016:	5b                   	pop    %ebx
57f017:	c3                   	ret
57f018:	89 6e 10             	mov    %ebp,0x10(%esi)
57f01b:	56                   	push   %esi
57f01c:	ff 75 08             	push   0x8(%ebp)
57f01f:	e8 2c 61 f6 ff       	call   0x4e5150
57f024:	83 c4 08             	add    $0x8,%esp
57f027:	85 c0                	test   %eax,%eax
57f029:	74 07                	je     0x57f032
57f02b:	5f                   	pop    %edi
57f02c:	8b c6                	mov    %esi,%eax
57f02e:	5e                   	pop    %esi
57f02f:	5d                   	pop    %ebp
57f030:	5b                   	pop    %ebx
57f031:	c3                   	ret
57f032:	68 0d 01 00 00       	push   $0x10d
57f037:	68 08 b5 65 00       	push   $0x65b508
57f03c:	6a 41                	push   $0x41
57f03e:	68 9d 00 00 00       	push   $0x9d
57f043:	6a 0b                	push   $0xb
57f045:	e8 36 9f f5 ff       	call   0x4d8f80
57f04a:	8b 46 08             	mov    0x8(%esi),%eax
57f04d:	83 c4 14             	add    $0x14,%esp
57f050:	85 c0                	test   %eax,%eax
57f052:	74 0d                	je     0x57f061
57f054:	8b 40 08             	mov    0x8(%eax),%eax
57f057:	85 c0                	test   %eax,%eax
57f059:	74 06                	je     0x57f061
57f05b:	56                   	push   %esi
57f05c:	ff d0                	call   *%eax
57f05e:	83 c4 04             	add    $0x4,%esp
57f061:	6a 29                	push   $0x29
57f063:	68 08 b5 65 00       	push   $0x65b508
57f068:	56                   	push   %esi