57d961:	8d 85 ec 00 00 00    	lea    0xec(%ebp),%eax
57d967:	53                   	push   %ebx
57d968:	50                   	push   %eax
57d969:	e8 92 55 06 00       	call   0x5e2f00
57d96e:	83 c4 0c             	add    $0xc,%esp
57d971:	89 b5 0c 01 00 00    	mov    %esi,0x10c(%ebp)
57d977:	5f                   	pop    %edi
57d978:	5e                   	pop    %esi
57d979:	5d                   	pop    %ebp
57d97a:	b8 01 00 00 00       	mov    $0x1,%eax
57d97f:	5b                   	pop    %ebx
57d980:	c3                   	ret
57d981:	5f                   	pop    %edi
57d982:	5e                   	pop    %esi
57d983:	5d                   	pop    %ebp
57d984:	33 c0                	xor    %eax,%eax
57d986:	5b                   	pop    %ebx
57d987:	c3                   	ret
57d988:	cc                   	int3
57d989:	cc                   	int3
57d98a:	cc                   	int3
57d98b:	cc                   	int3
57d98c:	cc                   	int3
57d98d:	cc                   	int3
57d98e:	cc                   	int3
57d98f:	cc                   	int3
57d990:	53                   	push   %ebx
57d991:	8b 5c 24 08          	mov    0x8(%esp),%ebx
57d995:	33 c0                	xor    %eax,%eax
57d997:	56                   	push   %esi
57d998:	8b 74 24 14          	mov    0x14(%esp),%esi
57d99c:	57                   	push   %edi
57d99d:	8b 7c 24 14          	mov    0x14(%esp),%edi
57d9a1:	85 f6                	test   %esi,%esi
57d9a3:	7e 2e                	jle    0x57d9d3
57d9a5:	55                   	push   %ebp
57d9a6:	8d 4e ff             	lea    -0x1(%esi),%ecx
57d9a9:	8b ef                	mov    %edi,%ebp
57d9ab:	89 4c 24 1c          	mov    %ecx,0x1c(%esp)
57d9af:	2b eb                	sub    %ebx,%ebp
57d9b1:	8d 14 18             	lea    (%eax,%ebx,1),%edx
57d9b4:	8a 0c 2a             	mov    (%edx,%ebp,1),%cl
57d9b7:	02 c9                	add    %cl,%cl
57d9b9:	88 0a                	mov    %cl,(%edx)
57d9bb:	3b 44 24 1c          	cmp    0x1c(%esp),%eax
57d9bf:	7d 0c                	jge    0x57d9cd
57d9c1:	f6 44 38 01 80       	testb  $0x80,0x1(%eax,%edi,1)
57d9c6:	74 05                	je     0x57d9cd
57d9c8:	80 c9 01             	or     $0x1,%cl
57d9cb:	88 0a                	mov    %cl,(%edx)
57d9cd:	40                   	inc    %eax
57d9ce:	3b c6                	cmp    %esi,%eax
57d9d0:	7c df                	jl     0x57d9b1
57d9d2:	5d                   	pop    %ebp
57d9d3:	f6 07 80             	testb  $0x80,(%edi)
57d9d6:	74 14                	je     0x57d9ec
57d9d8:	83 fe 10             	cmp    $0x10,%esi
57d9db:	b8 1b 00 00 00       	mov    $0x1b,%eax
57d9e0:	b9 87 00 00 00       	mov    $0x87,%ecx
57d9e5:	0f 44 c1             	cmove  %ecx,%eax
57d9e8:	30 44 33 ff          	xor    %al,-0x1(%ebx,%esi,1)
57d9ec:	5f                   	pop    %edi
57d9ed:	5e                   	pop    %esi
57d9ee:	5b                   	pop    %ebx
57d9ef:	c3                   	ret
57d9f0:	b8 10 00 00 00       	mov    $0x10,%eax
57d9f5:	e8 f6 3a 06 00       	call   0x5e14f0
57d9fa:	53                   	push   %ebx
57d9fb:	8b 5c 24 18          	mov    0x18(%esp),%ebx
57d9ff:	56                   	push   %esi
57da00:	33 f6                	xor    %esi,%esi
57da02:	85 db                	test   %ebx,%ebx
57da04:	75 08                	jne    0x57da0e
57da06:	5e                   	pop    %esi
57da07:	33 c0                	xor    %eax,%eax
57da09:	5b                   	pop    %ebx
57da0a:	83 c4 10             	add    $0x10,%esp
57da0d:	c3                   	ret
57da0e:	8b 0d 78 03 73 00    	mov    0x730378,%ecx
57da14:	85 c9                	test   %ecx,%ecx
57da16:	75 0f                	jne    0x57da27
57da18:	e8 83 00 00 00       	call   0x57daa0
57da1d:	85 c0                	test   %eax,%eax
57da1f:	74 e5                	je     0x57da06
57da21:	8b 0d 78 03 73 00    	mov    0x730378,%ecx
57da27:	8b 44 24 20          	mov    0x20(%esp),%eax
57da2b:	57                   	push   %edi
57da2c:	8b f8                	mov    %eax,%edi
57da2e:	89 5c 24 14          	mov    %ebx,0x14(%esp)
57da32:	25 ff 7f ff ff       	and    $0xffff7fff,%eax
57da37:	81 e7 00 80 00 00    	and    $0x8000,%edi
57da3d:	89 44 24 0c          	mov    %eax,0xc(%esp)
57da41:	8d 44 24 0c          	lea    0xc(%esp),%eax
57da45:	50                   	push   %eax
57da46:	51                   	push   %ecx
57da47:	e8 d4 29 f3 ff       	call   0x4b0420
57da4c:	83 c4 08             	add    $0x8,%esp
57da4f:	85 c0                	test   %eax,%eax
57da51:	74 2e                	je     0x57da81
57da53:	83 78 04 00          	cmpl   $0x0,0x4(%eax)
57da57:	74 31                	je     0x57da8a
57da59:	85 ff                	test   %edi,%edi
57da5b:	75 2d                	jne    0x57da8a
57da5d:	46                   	inc    %esi
57da5e:	83 fe 0a             	cmp    $0xa,%esi
57da61:	7f 1e                	jg     0x57da81
57da63:	8b 40 0c             	mov    0xc(%eax),%eax
57da66:	89 44 24 14          	mov    %eax,0x14(%esp)
57da6a:	8d 44 24 0c          	lea    0xc(%esp),%eax
57da6e:	50                   	push   %eax
57da6f:	ff 35 78 03 73 00    	push   0x730378
57da75:	e8 a6 29 f3 ff       	call   0x4b0420
57da7a:	83 c4 08             	add    $0x8,%esp
57da7d:	85 c0                	test   %eax,%eax
57da7f:	75 d2                	jne    0x57da53
57da81:	5f                   	pop    %edi
57da82:	5e                   	pop    %esi
57da83:	33 c0                	xor    %eax,%eax
57da85:	5b                   	pop    %ebx
57da86:	83 c4 10             	add    $0x10,%esp
57da89:	c3                   	ret
57da8a:	8b 40 0c             	mov    0xc(%eax),%eax
57da8d:	5f                   	pop    %edi
57da8e:	5e                   	pop    %esi
57da8f:	5b                   	pop    %ebx
57da90:	83 c4 10             	add    $0x10,%esp
57da93:	c3                   	ret
57da94:	cc                   	int3
57da95:	cc                   	int3
57da96:	cc                   	int3
57da97:	cc                   	int3
57da98:	cc                   	int3
57da99:	cc                   	int3
57da9a:	cc                   	int3
57da9b:	cc                   	int3
57da9c:	cc                   	int3
57da9d:	cc                   	int3
57da9e:	cc                   	int3
57da9f:	cc                   	int3
57daa0:	83 3d 78 03 73 00 00 	cmpl   $0x0,0x730378
57daa7:	74 06                	je     0x57daaf
57daa9:	b8 01 00 00 00       	mov    $0x1,%eax
57daae:	c3                   	ret
57daaf:	6a 03                	push   $0x3
57dab1:	e8 ca 0e f3 ff       	call   0x4ae980
57dab6:	68 e0 da 57 00       	push   $0x57dae0
57dabb:	68 f0 da 57 00       	push   $0x57daf0
57dac0:	e8 1b 28 f3 ff       	call   0x4b02e0
57dac5:	6a 02                	push   $0x2
57dac7:	a3 78 03 73 00       	mov    %eax,0x730378
57dacc:	e8 af 0e f3 ff       	call   0x4ae980
57dad1:	33 c0                	xor    %eax,%eax
57dad3:	83 c4 10             	add    $0x10,%esp
57dad6:	39 05 78 03 73 00    	cmp    %eax,0x730378
57dadc:	0f 95 c0             	setne  %al
57dadf:	c3                   	ret
57dae0:	e9 6b 00 00 00       	jmp    0x57db50
57dae5:	cc                   	int3
57dae6:	cc                   	int3
57dae7:	cc                   	int3
57dae8:	cc                   	int3
57dae9:	cc                   	int3
57daea:	cc                   	int3
57daeb:	cc                   	int3
57daec:	cc                   	int3
57daed:	cc                   	int3
57daee:	cc                   	int3
57daef:	cc                   	int3
57daf0:	a1 7c 03 73 00       	mov    0x73037c,%eax
57daf5:	56                   	push   %esi
57daf6:	8b 74 24 08          	mov    0x8(%esp),%esi
57dafa:	57                   	push   %edi
57dafb:	85 c0                	test   %eax,%eax
57dafd:	74 2e                	je     0x57db2d
57daff:	8b 3e                	mov    (%esi),%edi
57db01:	50                   	push   %eax
57db02:	e8 09 0b f3 ff       	call   0x4ae610
57db07:	83 c4 04             	add    $0x4,%esp
57db0a:	3b c7                	cmp    %edi,%eax
57db0c:	7e 1f                	jle    0x57db2d
57db0e:	57                   	push   %edi
57db0f:	ff 35 7c 03 73 00    	push   0x73037c
57db15:	e8 16 0c f3 ff       	call   0x4ae730
57db1a:	ff 76 08             	push   0x8(%esi)
57db1d:	8b 00                	mov    (%eax),%eax
57db1f:	ff d0                	call   *%eax
57db21:	83 c4 0c             	add    $0xc,%esp
57db24:	8b c8                	mov    %eax,%ecx
57db26:	8b 06                	mov    (%esi),%eax
57db28:	33 c1                	xor    %ecx,%eax
57db2a:	5f                   	pop    %edi
57db2b:	5e                   	pop    %esi
57db2c:	c3                   	ret
57db2d:	ff 76 08             	push   0x8(%esi)
57db30:	e8 1b 29 f3 ff       	call   0x4b0450
57db35:	83 c4 04             	add    $0x4,%esp
57db38:	8b c8                	mov    %eax,%ecx
57db3a:	8b 06                	mov    (%esi),%eax
57db3c:	33 c1                	xor    %ecx,%eax
57db3e:	5f                   	pop    %edi
57db3f:	5e                   	pop    %esi
57db40:	c3                   	ret
57db41:	cc                   	int3
57db42:	cc                   	int3
57db43:	cc                   	int3
57db44:	cc                   	int3
57db45:	cc                   	int3
57db46:	cc                   	int3
57db47:	cc                   	int3
57db48:	cc                   	int3
57db49:	cc                   	int3
57db4a:	cc                   	int3
57db4b:	cc                   	int3
57db4c:	cc                   	int3
57db4d:	cc                   	int3
57db4e:	cc                   	int3
57db4f:	cc                   	int3
57db50:	56                   	push   %esi
57db51:	8b 74 24 08          	mov    0x8(%esp),%esi
57db55:	57                   	push   %edi
57db56:	8b 7c 24 10          	mov    0x10(%esp),%edi
57db5a:	8b 06                	mov    (%esi),%eax
57db5c:	2b 07                	sub    (%edi),%eax
57db5e:	75 68                	jne    0x57dbc8
57db60:	a1 7c 03 73 00       	mov    0x73037c,%eax
57db65:	53                   	push   %ebx
57db66:	85 c0                	test   %eax,%eax
57db68:	74 2d                	je     0x57db97
57db6a:	8b 1e                	mov    (%esi),%ebx
57db6c:	50                   	push   %eax
57db6d:	e8 9e 0a f3 ff       	call   0x4ae610
57db72:	83 c4 04             	add    $0x4,%esp
57db75:	3b c3                	cmp    %ebx,%eax
57db77:	7e 1e                	jle    0x57db97
57db79:	53                   	push   %ebx
57db7a:	ff 35 7c 03 73 00    	push   0x73037c
57db80:	e8 ab 0b f3 ff       	call   0x4ae730
57db85:	ff 77 08             	push   0x8(%edi)
57db88:	ff 76 08             	push   0x8(%esi)
57db8b:	8b 40 04             	mov    0x4(%eax),%eax
57db8e:	ff d0                	call   *%eax
57db90:	83 c4 10             	add    $0x10,%esp
57db93:	5b                   	pop    %ebx
57db94:	5f                   	pop    %edi
57db95:	5e                   	pop    %esi
57db96:	c3                   	ret
57db97:	8b 47 08             	mov    0x8(%edi),%eax
57db9a:	8b 4e 08             	mov    0x8(%esi),%ecx
57db9d:	0f 1f 00             	nopl   (%eax)
57dba0:	8a 11                	mov    (%ecx),%dl
57dba2:	3a 10                	cmp    (%eax),%dl
57dba4:	75 1c                	jne    0x57dbc2
57dba6:	84 d2                	test   %dl,%dl
57dba8:	74 12                	je     0x57dbbc
57dbaa:	8a 51 01             	mov    0x1(%ecx),%dl
57dbad:	3a 50 01             	cmp    0x1(%eax),%dl
57dbb0:	75 10                	jne    0x57dbc2
57dbb2:	83 c1 02             	add    $0x2,%ecx
57dbb5:	83 c0 02             	add    $0x2,%eax
57dbb8:	84 d2                	test   %dl,%dl
57dbba:	75 e4                	jne    0x57dba0
57dbbc:	5b                   	pop    %ebx
57dbbd:	5f                   	pop    %edi
57dbbe:	33 c0                	xor    %eax,%eax
57dbc0:	5e                   	pop    %esi
57dbc1:	c3                   	ret
57dbc2:	1b c0                	sbb    %eax,%eax
57dbc4:	83 c8 01             	or     $0x1,%eax
57dbc7:	5b                   	pop    %ebx
57dbc8:	5f                   	pop    %edi
57dbc9:	5e                   	pop    %esi
57dbca:	c3                   	ret
57dbcb:	cc                   	int3
57dbcc:	cc                   	int3
57dbcd:	cc                   	int3
57dbce:	cc                   	int3
57dbcf:	cc                   	int3
57dbd0:	b8 10 00 00 00       	mov    $0x10,%eax
57dbd5:	e8 16 39 06 00       	call   0x5e14f0
57dbda:	a1 d4 89 72 00       	mov    0x7289d4,%eax
57dbdf:	33 c4                	xor    %esp,%eax
57dbe1:	89 44 24 0c          	mov    %eax,0xc(%esp)
57dbe5:	8b 44 24 14          	mov    0x14(%esp),%eax
57dbe9:	56                   	push   %esi
57dbea:	8b 74 24 20          	mov    0x20(%esp),%esi
57dbee:	89 44 24 04          	mov    %eax,0x4(%esp)
57dbf2:	a1 8c 26 73 00       	mov    0x73268c,%eax
57dbf7:	57                   	push   %edi
57dbf8:	8b 7c 24 20          	mov    0x20(%esp),%edi
57dbfc:	85 c0                	test   %eax,%eax
57dbfe:	74 27                	je     0x57dc27
57dc00:	8d 4c 24 08          	lea    0x8(%esp),%ecx
57dc04:	51                   	push   %ecx
57dc05:	50                   	push   %eax
57dc06:	e8 45 08 f3 ff       	call   0x4ae450
57dc0b:	83 c4 08             	add    $0x8,%esp
57dc0e:	85 c0                	test   %eax,%eax
57dc10:	78 15                	js     0x57dc27
57dc12:	50                   	push   %eax
57dc13:	ff 35 8c 26 73 00    	push   0x73268c
57dc19:	e8 12 0b f3 ff       	call   0x4ae730
57dc1e:	8b c8                	mov    %eax,%ecx
57dc20:	83 c4 08             	add    $0x8,%esp
57dc23:	85 c9                	test   %ecx,%ecx
57dc25:	75 32                	jne    0x57dc59
57dc27:	68 d0 15 4a 00       	push   $0x4a15d0
57dc2c:	6a 0c                	push   $0xc
57dc2e:	6a 28                	push   $0x28
57dc30:	8d 44 24 14          	lea    0x14(%esp),%eax
57dc34:	68 90 29 6c 00       	push   $0x6c2990
57dc39:	50                   	push   %eax
57dc3a:	e8 21 9a f2 ff       	call   0x4a7660
57dc3f:	8b c8                	mov    %eax,%ecx
57dc41:	83 c4 14             	add    $0x14,%esp
57dc44:	85 c9                	test   %ecx,%ecx
57dc46:	75 11                	jne    0x57dc59
57dc48:	5f                   	pop    %edi
57dc49:	5e                   	pop    %esi
57dc4a:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
57dc4e:	33 cc                	xor    %esp,%ecx
57dc50:	e8 85 38 06 00       	call   0x5e14da
57dc55:	83 c4 10             	add    $0x10,%esp
57dc58:	c3                   	ret
57dc59:	85 ff                	test   %edi,%edi
57dc5b:	74 05                	je     0x57dc62
57dc5d:	8b 41 04             	mov    0x4(%ecx),%eax
57dc60:	89 07                	mov    %eax,(%edi)
57dc62:	85 f6                	test   %esi,%esi
57dc64:	74 05                	je     0x57dc6b
57dc66:	8b 41 08             	mov    0x8(%ecx),%eax
57dc69:	89 06                	mov    %eax,(%esi)
57dc6b:	8b 4c 24 14          	mov    0x14(%esp),%ecx
57dc6f:	b8 01 00 00 00       	mov    $0x1,%eax
57dc74:	5f                   	pop    %edi
57dc75:	5e                   	pop    %esi
57dc76:	33 cc                	xor    %esp,%ecx
57dc78:	e8 5d 38 06 00       	call   0x5e14da
57dc7d:	83 c4 10             	add    $0x10,%esp
57dc80:	c3                   	ret
57dc81:	cc                   	int3
57dc82:	cc                   	int3
57dc83:	cc                   	int3
57dc84:	cc                   	int3
57dc85:	cc                   	int3
57dc86:	cc                   	int3
57dc87:	cc                   	int3
57dc88:	cc                   	int3
57dc89:	cc                   	int3
57dc8a:	cc                   	int3
57dc8b:	cc                   	int3