570cca:	5d                   	pop    %ebp
570ccb:	5b                   	pop    %ebx
570ccc:	83 c4 20             	add    $0x20,%esp
570ccf:	c3                   	ret
570cd0:	8b 42 24             	mov    0x24(%edx),%eax
570cd3:	31 45 0c             	xor    %eax,0xc(%ebp)
570cd6:	8b 42 18             	mov    0x18(%edx),%eax
570cd9:	89 44 24 10          	mov    %eax,0x10(%esp)
570cdd:	8b 45 04             	mov    0x4(%ebp),%eax
570ce0:	57                   	push   %edi
570ce1:	8b 7d 00             	mov    0x0(%ebp),%edi
570ce4:	89 7c 24 3c          	mov    %edi,0x3c(%esp)
570ce8:	3b c6                	cmp    %esi,%eax
570cea:	7d 0f                	jge    0x570cfb
570cec:	8d 3c 87             	lea    (%edi,%eax,4),%edi
570cef:	8b ce                	mov    %esi,%ecx
570cf1:	2b c8                	sub    %eax,%ecx
570cf3:	33 c0                	xor    %eax,%eax
570cf5:	f3 ab                	rep stos %eax,%es:(%edi)
570cf7:	8b 7c 24 3c          	mov    0x3c(%esp),%edi
570cfb:	89 75 04             	mov    %esi,0x4(%ebp)
570cfe:	8b 4a 40             	mov    0x40(%edx),%ecx
570d01:	89 4c 24 18          	mov    %ecx,0x18(%esp)
570d05:	c7 44 24 10 00 00 00 	movl   $0x0,0x10(%esp)
570d0c:	00
570d0d:	85 db                	test   %ebx,%ebx
570d0f:	7e 4b                	jle    0x570d5c
570d11:	89 5c 24 3c          	mov    %ebx,0x3c(%esp)
570d15:	33 ed                	xor    %ebp,%ebp
570d17:	8b 07                	mov    (%edi),%eax
570d19:	0f af c1             	imul   %ecx,%eax
570d1c:	50                   	push   %eax
570d1d:	53                   	push   %ebx
570d1e:	ff 74 24 1c          	push   0x1c(%esp)
570d22:	57                   	push   %edi
570d23:	e8 38 9c f5 ff       	call   0x4ca960
570d28:	8b 14 9f             	mov    (%edi,%ebx,4),%edx
570d2b:	33 c9                	xor    %ecx,%ecx
570d2d:	83 c4 10             	add    $0x10,%esp
570d30:	8d 34 2a             	lea    (%edx,%ebp,1),%esi
570d33:	03 f0                	add    %eax,%esi
570d35:	3b f2                	cmp    %edx,%esi
570d37:	89 34 9f             	mov    %esi,(%edi,%ebx,4)
570d3a:	0f 95 c1             	setne  %cl
570d3d:	0b e9                	or     %ecx,%ebp
570d3f:	8b 4c 24 18          	mov    0x18(%esp),%ecx
570d43:	3b d6                	cmp    %esi,%edx
570d45:	1b c0                	sbb    %eax,%eax
570d47:	83 c7 04             	add    $0x4,%edi
570d4a:	40                   	inc    %eax
570d4b:	23 e8                	and    %eax,%ebp
570d4d:	83 6c 24 3c 01       	subl   $0x1,0x3c(%esp)
570d52:	75 c3                	jne    0x570d17
570d54:	89 6c 24 10          	mov    %ebp,0x10(%esp)
570d58:	8b 6c 24 38          	mov    0x38(%esp),%ebp
570d5c:	8b 7c 24 34          	mov    0x34(%esp),%edi
570d60:	3b 5f 08             	cmp    0x8(%edi),%ebx
570d63:	7f 04                	jg     0x570d69
570d65:	8b c7                	mov    %edi,%eax
570d67:	eb 0a                	jmp    0x570d73
570d69:	53                   	push   %ebx
570d6a:	57                   	push   %edi
570d6b:	e8 30 29 f4 ff       	call   0x4b36a0
570d70:	83 c4 08             	add    $0x8,%esp
570d73:	85 c0                	test   %eax,%eax
570d75:	75 08                	jne    0x570d7f
570d77:	5f                   	pop    %edi
570d78:	5e                   	pop    %esi
570d79:	5d                   	pop    %ebp
570d7a:	5b                   	pop    %ebx
570d7b:	83 c4 20             	add    $0x20,%esp
570d7e:	c3                   	ret
570d7f:	8b 0f                	mov    (%edi),%ecx
570d81:	89 5f 04             	mov    %ebx,0x4(%edi)
570d84:	8b 45 0c             	mov    0xc(%ebp),%eax
570d87:	89 47 0c             	mov    %eax,0xc(%edi)
570d8a:	8b 45 00             	mov    0x0(%ebp),%eax
570d8d:	53                   	push   %ebx
570d8e:	ff 74 24 18          	push   0x18(%esp)
570d92:	89 4c 24 20          	mov    %ecx,0x20(%esp)
570d96:	8d 34 98             	lea    (%eax,%ebx,4),%esi
570d99:	56                   	push   %esi
570d9a:	51                   	push   %ecx
570d9b:	89 74 24 4c          	mov    %esi,0x4c(%esp)
570d9f:	e8 8c ac f5 ff       	call   0x4cba30
570da4:	8b 4c 24 20          	mov    0x20(%esp),%ecx
570da8:	83 eb 04             	sub    $0x4,%ebx
570dab:	2b c8                	sub    %eax,%ecx
570dad:	89 5c 24 38          	mov    %ebx,0x38(%esp)
570db1:	8b c1                	mov    %ecx,%eax
570db3:	33 d2                	xor    %edx,%edx
570db5:	f7 d0                	not    %eax
570db7:	89 54 24 20          	mov    %edx,0x20(%esp)
570dbb:	23 44 24 28          	and    0x28(%esp),%eax
570dbf:	23 ce                	and    %esi,%ecx
570dc1:	0b c1                	or     %ecx,%eax
570dc3:	83 c4 10             	add    $0x10,%esp
570dc6:	89 44 24 2c          	mov    %eax,0x2c(%esp)
570dca:	85 db                	test   %ebx,%ebx
570dcc:	0f 8e ab 00 00 00    	jle    0x570e7d
570dd2:	8b 54 24 18          	mov    0x18(%esp),%edx
570dd6:	8d 68 08             	lea    0x8(%eax),%ebp
570dd9:	8b fe                	mov    %esi,%edi
570ddb:	8d 4a 04             	lea    0x4(%edx),%ecx
570dde:	89 4c 24 14          	mov    %ecx,0x14(%esp)
570de2:	8b ce                	mov    %esi,%ecx
570de4:	2b c8                	sub    %eax,%ecx
570de6:	89 4c 24 20          	mov    %ecx,0x20(%esp)
570dea:	8b ca                	mov    %edx,%ecx
570dec:	2b c8                	sub    %eax,%ecx
570dee:	8b c6                	mov    %esi,%eax
570df0:	2b c2                	sub    %edx,%eax
570df2:	89 4c 24 24          	mov    %ecx,0x24(%esp)
570df6:	89 44 24 1c          	mov    %eax,0x1c(%esp)
570dfa:	66 0f 1f 44 00 00    	nopw   0x0(%eax,%eax,1)
570e00:	8b 4d f8             	mov    -0x8(%ebp),%ecx
570e03:	8d 6d 10             	lea    0x10(%ebp),%ebp
570e06:	8b 55 ec             	mov    -0x14(%ebp),%edx
570e09:	8b 75 f0             	mov    -0x10(%ebp),%esi
570e0c:	8b 44 24 10          	mov    0x10(%esp),%eax
570e10:	8b 5c 24 1c          	mov    0x1c(%esp),%ebx
570e14:	c7 04 87 00 00 00 00 	movl   $0x0,(%edi,%eax,4)
570e1b:	8b 7c 24 14          	mov    0x14(%esp),%edi
570e1f:	8b 45 f4             	mov    -0xc(%ebp),%eax
570e22:	c7 04 3b 00 00 00 00 	movl   $0x0,(%ebx,%edi,1)
570e29:	8b 5c 24 28          	mov    0x28(%esp),%ebx
570e2d:	89 4f fc             	mov    %ecx,-0x4(%edi)
570e30:	8b 4c 24 20          	mov    0x20(%esp),%ecx
570e34:	c7 44 29 f0 00 00 00 	movl   $0x0,-0x10(%ecx,%ebp,1)
570e3b:	00
570e3c:	8b cf                	mov    %edi,%ecx
570e3e:	8b 7c 24 3c          	mov    0x3c(%esp),%edi
570e42:	89 11                	mov    %edx,(%ecx)
570e44:	8b 54 24 10          	mov    0x10(%esp),%edx
570e48:	c7 44 97 0c 00 00 00 	movl   $0x0,0xc(%edi,%edx,4)
570e4f:	00
570e50:	83 c2 04             	add    $0x4,%edx
570e53:	8b 7c 24 24          	mov    0x24(%esp),%edi
570e57:	89 41 08             	mov    %eax,0x8(%ecx)
570e5a:	83 c1 10             	add    $0x10,%ecx
570e5d:	89 54 24 10          	mov    %edx,0x10(%esp)
570e61:	89 4c 24 14          	mov    %ecx,0x14(%esp)
570e65:	89 74 2f f0          	mov    %esi,-0x10(%edi,%ebp,1)
570e69:	8b 7c 24 3c          	mov    0x3c(%esp),%edi
570e6d:	3b d3                	cmp    %ebx,%edx
570e6f:	7c 8f                	jl     0x570e00
570e71:	8b 6c 24 38          	mov    0x38(%esp),%ebp
570e75:	8b 7c 24 34          	mov    0x34(%esp),%edi
570e79:	8b 74 24 3c          	mov    0x3c(%esp),%esi
570e7d:	83 c3 04             	add    $0x4,%ebx
570e80:	3b d3                	cmp    %ebx,%edx
570e82:	7d 2b                	jge    0x570eaf
570e84:	8b 44 24 18          	mov    0x18(%esp),%eax
570e88:	2b f0                	sub    %eax,%esi
570e8a:	8b 7c 24 2c          	mov    0x2c(%esp),%edi
570e8e:	2b f8                	sub    %eax,%edi
570e90:	2b da                	sub    %edx,%ebx
570e92:	8d 0c 90             	lea    (%eax,%edx,4),%ecx
570e95:	8b 04 0f             	mov    (%edi,%ecx,1),%eax
570e98:	8d 49 04             	lea    0x4(%ecx),%ecx
570e9b:	89 41 fc             	mov    %eax,-0x4(%ecx)
570e9e:	c7 44 0e fc 00 00 00 	movl   $0x0,-0x4(%esi,%ecx,1)
570ea5:	00
570ea6:	83 eb 01             	sub    $0x1,%ebx
570ea9:	75 ea                	jne    0x570e95
570eab:	8b 7c 24 34          	mov    0x34(%esp),%edi
570eaf:	8b 4d 04             	mov    0x4(%ebp),%ecx
570eb2:	85 c9                	test   %ecx,%ecx
570eb4:	7e 1b                	jle    0x570ed1
570eb6:	8b 45 00             	mov    0x0(%ebp),%eax
570eb9:	8d 51 ff             	lea    -0x1(%ecx),%edx
570ebc:	8d 14 90             	lea    (%eax,%edx,4),%edx
570ebf:	90                   	nop
570ec0:	8b 02                	mov    (%edx),%eax
570ec2:	8d 52 fc             	lea    -0x4(%edx),%edx
570ec5:	85 c0                	test   %eax,%eax
570ec7:	75 05                	jne    0x570ece
570ec9:	49                   	dec    %ecx
570eca:	85 c9                	test   %ecx,%ecx
570ecc:	7f f2                	jg     0x570ec0
570ece:	89 4d 04             	mov    %ecx,0x4(%ebp)
570ed1:	83 7d 04 00          	cmpl   $0x0,0x4(%ebp)
570ed5:	75 07                	jne    0x570ede
570ed7:	c7 45 0c 00 00 00 00 	movl   $0x0,0xc(%ebp)
570ede:	8b 4f 04             	mov    0x4(%edi),%ecx
570ee1:	85 c9                	test   %ecx,%ecx
570ee3:	7e 1c                	jle    0x570f01
570ee5:	8b 07                	mov    (%edi),%eax
570ee7:	8d 51 ff             	lea    -0x1(%ecx),%edx
570eea:	8d 14 90             	lea    (%eax,%edx,4),%edx
570eed:	0f 1f 00             	nopl   (%eax)
570ef0:	8b 02                	mov    (%edx),%eax
570ef2:	8d 52 fc             	lea    -0x4(%edx),%edx
570ef5:	85 c0                	test   %eax,%eax
570ef7:	75 05                	jne    0x570efe
570ef9:	49                   	dec    %ecx
570efa:	85 c9                	test   %ecx,%ecx
570efc:	7f f2                	jg     0x570ef0
570efe:	89 4f 04             	mov    %ecx,0x4(%edi)
570f01:	83 7f 04 00          	cmpl   $0x0,0x4(%edi)
570f05:	75 07                	jne    0x570f0e
570f07:	c7 47 0c 00 00 00 00 	movl   $0x0,0xc(%edi)
570f0e:	5f                   	pop    %edi
570f0f:	5e                   	pop    %esi
570f10:	5d                   	pop    %ebp
570f11:	b8 01 00 00 00       	mov    $0x1,%eax
570f16:	5b                   	pop    %ebx
570f17:	83 c4 20             	add    $0x20,%esp
570f1a:	c3                   	ret
570f1b:	cc                   	int3
570f1c:	cc                   	int3
570f1d:	cc                   	int3
570f1e:	cc                   	int3
570f1f:	cc                   	int3
570f20:	53                   	push   %ebx
570f21:	56                   	push   %esi
570f22:	8b 74 24 1c          	mov    0x1c(%esp),%esi
570f26:	33 db                	xor    %ebx,%ebx
570f28:	57                   	push   %edi
570f29:	56                   	push   %esi
570f2a:	e8 71 6f f6 ff       	call   0x4d7ea0
570f2f:	56                   	push   %esi
570f30:	e8 8b 6e f6 ff       	call   0x4d7dc0
570f35:	8b f8                	mov    %eax,%edi
570f37:	83 c4 08             	add    $0x8,%esp
570f3a:	85 ff                	test   %edi,%edi
570f3c:	74 43                	je     0x570f81
570f3e:	8b 44 24 14          	mov    0x14(%esp),%eax
570f42:	8b 4c 24 18          	mov    0x18(%esp),%ecx
570f46:	56                   	push   %esi
570f47:	3b c1                	cmp    %ecx,%eax
570f49:	75 0c                	jne    0x570f57
570f4b:	50                   	push   %eax
570f4c:	57                   	push   %edi
570f4d:	e8 0e 5e 01 00       	call   0x586d60
570f52:	83 c4 0c             	add    $0xc,%esp
570f55:	eb 0b                	jmp    0x570f62
570f57:	51                   	push   %ecx
570f58:	50                   	push   %eax
570f59:	57                   	push   %edi
570f5a:	e8 21 75 f6 ff       	call   0x4d8480
570f5f:	83 c4 10             	add    $0x10,%esp
570f62:	85 c0                	test   %eax,%eax
570f64:	74 1b                	je     0x570f81
570f66:	ff 74 24 1c          	push   0x1c(%esp)
570f6a:	57                   	push   %edi
570f6b:	ff 74 24 18          	push   0x18(%esp)
570f6f:	e8 0c fd ff ff       	call   0x570c80
570f74:	83 c4 0c             	add    $0xc,%esp
570f77:	b9 01 00 00 00       	mov    $0x1,%ecx
570f7c:	85 c0                	test   %eax,%eax
570f7e:	0f 45 d9             	cmovne %ecx,%ebx
570f81:	56                   	push   %esi
570f82:	e8 c9 6d f6 ff       	call   0x4d7d50
570f87:	83 c4 04             	add    $0x4,%esp
570f8a:	8b c3                	mov    %ebx,%eax
570f8c:	5f                   	pop    %edi
570f8d:	5e                   	pop    %esi
570f8e:	5b                   	pop    %ebx
570f8f:	c3                   	ret
570f90:	53                   	push   %ebx
570f91:	8b 5c 24 14          	mov    0x14(%esp),%ebx
570f95:	57                   	push   %edi
570f96:	8b 7c 24 10          	mov    0x10(%esp),%edi
570f9a:	8d 47 f5             	lea    -0xb(%edi),%eax
570f9d:	3b d8                	cmp    %eax,%ebx
570f9f:	7e 1a                	jle    0x570fbb
570fa1:	6a 4b                	push   $0x4b
570fa3:	68 d0 c9 6b 00       	push   $0x6bc9d0
570fa8:	6a 6e                	push   $0x6e
570faa:	6a 6c                	push   $0x6c
570fac:	6a 04                	push   $0x4
570fae:	e8 ed 04 f3 ff       	call   0x4a14a0
570fb3:	83 c4 14             	add    $0x14,%esp
570fb6:	33 c0                	xor    %eax,%eax
570fb8:	5f                   	pop    %edi
570fb9:	5b                   	pop    %ebx
570fba:	c3                   	ret
570fbb:	8b 44 24 0c          	mov    0xc(%esp),%eax
570fbf:	2b fb                	sub    %ebx,%edi
570fc1:	56                   	push   %esi
570fc2:	8d 70 01             	lea    0x1(%eax),%esi
570fc5:	83 ef 03             	sub    $0x3,%edi
570fc8:	57                   	push   %edi
570fc9:	c6 00 00             	movb   $0x0,(%eax)
570fcc:	c6 06 01             	movb   $0x1,(%esi)
570fcf:	46                   	inc    %esi
570fd0:	68 ff 00 00 00       	push   $0xff
570fd5:	56                   	push   %esi
570fd6:	e8 25 2a 07 00       	call   0x5e3a00
570fdb:	53                   	push   %ebx
570fdc:	ff 74 24 28          	push   0x28(%esp)
570fe0:	8d 46 01             	lea    0x1(%esi),%eax
570fe3:	c6 04 3e 00          	movb   $0x0,(%esi,%edi,1)
570fe7:	03 c7                	add    %edi,%eax
570fe9:	50                   	push   %eax
570fea:	e8 11 1f 07 00       	call   0x5e2f00
570fef:	83 c4 18             	add    $0x18,%esp
570ff2:	b8 01 00 00 00       	mov    $0x1,%eax
570ff7:	5e                   	pop    %esi
570ff8:	5f                   	pop    %edi
570ff9:	5b                   	pop    %ebx
570ffa:	c3                   	ret
570ffb:	cc                   	int3
570ffc:	cc                   	int3
570ffd:	cc                   	int3
570ffe:	cc                   	int3
570fff:	cc                   	int3
571000:	53                   	push   %ebx
571001:	8b 5c 24 0c          	mov    0xc(%esp),%ebx
571005:	55                   	push   %ebp
571006:	8b 6c 24 18          	mov    0x18(%esp),%ebp
57100a:	8d 43 f5             	lea    -0xb(%ebx),%eax
57100d:	3b e8                	cmp    %eax,%ebp
57100f:	7e 1d                	jle    0x57102e
571011:	68 99 00 00 00       	push   $0x99
571016:	68 d0 c9 6b 00       	push   $0x6bc9d0
57101b:	6a 6e                	push   $0x6e
57101d:	6a 6d                	push   $0x6d
57101f:	6a 04                	push   $0x4
571021:	e8 7a 04 f3 ff       	call   0x4a14a0
571026:	83 c4 14             	add    $0x14,%esp
571029:	33 c0                	xor    %eax,%eax
57102b:	5d                   	pop    %ebp
57102c:	5b                   	pop    %ebx
57102d:	c3                   	ret
57102e:	56                   	push   %esi
57102f:	8b 74 24 10          	mov    0x10(%esp),%esi
571033:	2b dd                	sub    %ebp,%ebx
571035:	83 eb 03             	sub    $0x3,%ebx
571038:	53                   	push   %ebx
571039:	66 c7 06 00 02       	movw   $0x200,(%esi)
57103e:	83 c6 02             	add    $0x2,%esi
571041:	56                   	push   %esi
571042:	e8 59 fe f1 ff       	call   0x490ea0
571047:	83 c4 08             	add    $0x8,%esp
57104a:	85 c0                	test   %eax,%eax
57104c:	7f 06                	jg     0x571054
57104e:	5e                   	pop    %esi
57104f:	5d                   	pop    %ebp
571050:	33 c0                	xor    %eax,%eax
571052:	5b                   	pop    %ebx
571053:	c3                   	ret
571054:	57                   	push   %edi
571055:	33 ff                	xor    %edi,%edi
571057:	85 db                	test   %ebx,%ebx
571059:	7e 24                	jle    0x57107f
57105b:	0f 1f 44 00 00       	nopl   0x0(%eax,%eax,1)
571060:	80 3e 00             	cmpb   $0x0,(%esi)
571063:	75 14                	jne    0x571079