4c5d84:	b9 03 00 00 00       	mov    $0x3,%ecx
4c5d89:	99                   	cltd
4c5d8a:	f7 f9                	idiv   %ecx
4c5d8c:	8b 56 08             	mov    0x8(%esi),%edx
4c5d8f:	2b d0                	sub    %eax,%edx
4c5d91:	4a                   	dec    %edx
4c5d92:	89 55 f8             	mov    %edx,-0x8(%ebp)
4c5d95:	55                   	push   %ebp
4c5d96:	8b c7                	mov    %edi,%eax
4c5d98:	e8 c7 fb ff ff       	call   0x4c5964
4c5d9d:	59                   	pop    %ecx
4c5d9e:	8d 7d cc             	lea    -0x34(%ebp),%edi
4c5da1:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c5da2:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c5da3:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c5da4:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c5da5:	6a ff                	push   $0xffffffff
4c5da7:	6a ff                	push   $0xffffffff
4c5da9:	8d 45 cc             	lea    -0x34(%ebp),%eax
4c5dac:	50                   	push   %eax
4c5dad:	e8 d6 1d f4 ff       	call   0x407b88
4c5db2:	80 7b 0b 00          	cmpb   $0x0,0xb(%ebx)
4c5db6:	74 30                	je     0x4c5de8
4c5db8:	80 7b 08 00          	cmpb   $0x0,0x8(%ebx)
4c5dbc:	74 2a                	je     0x4c5de8
4c5dbe:	8b 45 cc             	mov    -0x34(%ebp),%eax
4c5dc1:	89 45 dc             	mov    %eax,-0x24(%ebp)
4c5dc4:	8b 53 1c             	mov    0x1c(%ebx),%edx
4c5dc7:	03 d0                	add    %eax,%edx
4c5dc9:	89 55 e4             	mov    %edx,-0x1c(%ebp)
4c5dcc:	6a ff                	push   $0xffffffff
4c5dce:	6a ff                	push   $0xffffffff
4c5dd0:	8d 45 dc             	lea    -0x24(%ebp),%eax
4c5dd3:	50                   	push   %eax
4c5dd4:	e8 af 1d f4 ff       	call   0x407b88
4c5dd9:	55                   	push   %ebp
4c5dda:	8b cb                	mov    %ebx,%ecx
4c5ddc:	8d 55 dc             	lea    -0x24(%ebp),%edx
4c5ddf:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c5de2:	e8 29 fc ff ff       	call   0x4c5a10
4c5de7:	59                   	pop    %ecx
4c5de8:	5f                   	pop    %edi
4c5de9:	5e                   	pop    %esi
4c5dea:	5b                   	pop    %ebx
4c5deb:	8b e5                	mov    %ebp,%esp
4c5ded:	5d                   	pop    %ebp
4c5dee:	c2 04 00             	ret    $0x4
4c5df1:	8d 40 00             	lea    0x0(%eax),%eax
4c5df4:	55                   	push   %ebp
4c5df5:	8b ec                	mov    %esp,%ebp
4c5df7:	83 c4 e0             	add    $0xffffffe0,%esp
4c5dfa:	53                   	push   %ebx
4c5dfb:	56                   	push   %esi
4c5dfc:	57                   	push   %edi
4c5dfd:	8b f1                	mov    %ecx,%esi
4c5dff:	8d 7d f0             	lea    -0x10(%ebp),%edi
4c5e02:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c5e03:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c5e04:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c5e05:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c5e06:	8b da                	mov    %edx,%ebx
4c5e08:	8b f0                	mov    %eax,%esi
4c5e0a:	8b 7d 08             	mov    0x8(%ebp),%edi
4c5e0d:	8b 56 1c             	mov    0x1c(%esi),%edx
4c5e10:	8b 43 14             	mov    0x14(%ebx),%eax
4c5e13:	e8 6c 24 f6 ff       	call   0x428284
4c5e18:	8d 55 f0             	lea    -0x10(%ebp),%edx
4c5e1b:	8b c3                	mov    %ebx,%eax
4c5e1d:	e8 16 29 f6 ff       	call   0x428738
4c5e22:	6a ff                	push   $0xffffffff
4c5e24:	6a ff                	push   $0xffffffff
4c5e26:	8d 45 f0             	lea    -0x10(%ebp),%eax
4c5e29:	50                   	push   %eax
4c5e2a:	e8 59 1d f4 ff       	call   0x407b88
4c5e2f:	8b 56 14             	mov    0x14(%esi),%edx
4c5e32:	8b 43 14             	mov    0x14(%ebx),%eax
4c5e35:	e8 4a 24 f6 ff       	call   0x428284
4c5e3a:	8d 55 f0             	lea    -0x10(%ebp),%edx
4c5e3d:	8b c3                	mov    %ebx,%eax
4c5e3f:	e8 b8 28 f6 ff       	call   0x4286fc
4c5e44:	8b 56 1c             	mov    0x1c(%esi),%edx
4c5e47:	8b 43 10             	mov    0x10(%ebx),%eax
4c5e4a:	e8 35 21 f6 ff       	call   0x427f84
4c5e4f:	8b 46 1c             	mov    0x1c(%esi),%eax
4c5e52:	50                   	push   %eax
4c5e53:	b9 01 00 00 00       	mov    $0x1,%ecx
4c5e58:	ba 01 00 00 00       	mov    $0x1,%edx
4c5e5d:	8b c3                	mov    %ebx,%eax
4c5e5f:	e8 f0 2d f6 ff       	call   0x428c54
4c5e64:	8b 46 1c             	mov    0x1c(%esi),%eax
4c5e67:	50                   	push   %eax
4c5e68:	8b 55 f8             	mov    -0x8(%ebp),%edx
4c5e6b:	4a                   	dec    %edx
4c5e6c:	b9 01 00 00 00       	mov    $0x1,%ecx
4c5e71:	8b c3                	mov    %ebx,%eax
4c5e73:	e8 dc 2d f6 ff       	call   0x428c54
4c5e78:	8b 46 1c             	mov    0x1c(%esi),%eax
4c5e7b:	50                   	push   %eax
4c5e7c:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4c5e7f:	49                   	dec    %ecx
4c5e80:	ba 01 00 00 00       	mov    $0x1,%edx
4c5e85:	8b c3                	mov    %ebx,%eax
4c5e87:	e8 c8 2d f6 ff       	call   0x428c54
4c5e8c:	8b 46 1c             	mov    0x1c(%esi),%eax
4c5e8f:	50                   	push   %eax
4c5e90:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4c5e93:	49                   	dec    %ecx
4c5e94:	8b 55 f8             	mov    -0x8(%ebp),%edx
4c5e97:	4a                   	dec    %edx
4c5e98:	8b c3                	mov    %ebx,%eax
4c5e9a:	e8 b5 2d f6 ff       	call   0x428c54
4c5e9f:	8d 47 08             	lea    0x8(%edi),%eax
4c5ea2:	50                   	push   %eax
4c5ea3:	e8 38 1d f4 ff       	call   0x407be0
4c5ea8:	85 c0                	test   %eax,%eax
4c5eaa:	0f 85 22 01 00 00    	jne    0x4c5fd2
4c5eb0:	56                   	push   %esi
4c5eb1:	8d 77 08             	lea    0x8(%edi),%esi
4c5eb4:	8d 7d e0             	lea    -0x20(%ebp),%edi
4c5eb7:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c5eb8:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c5eb9:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c5eba:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c5ebb:	5e                   	pop    %esi
4c5ebc:	8d 45 e0             	lea    -0x20(%ebp),%eax
4c5ebf:	50                   	push   %eax
4c5ec0:	e8 1b 1d f4 ff       	call   0x407be0
4c5ec5:	85 c0                	test   %eax,%eax
4c5ec7:	0f 85 05 01 00 00    	jne    0x4c5fd2
4c5ecd:	8b 56 10             	mov    0x10(%esi),%edx
4c5ed0:	8b 43 10             	mov    0x10(%ebx),%eax
4c5ed3:	e8 ac 20 f6 ff       	call   0x427f84
4c5ed8:	8b 45 ec             	mov    -0x14(%ebp),%eax
4c5edb:	3b 45 f4             	cmp    -0xc(%ebp),%eax
4c5ede:	75 38                	jne    0x4c5f18
4c5ee0:	8b 45 f0             	mov    -0x10(%ebp),%eax
4c5ee3:	3b 45 e0             	cmp    -0x20(%ebp),%eax
4c5ee6:	7c 04                	jl     0x4c5eec
4c5ee8:	48                   	dec    %eax
4c5ee9:	89 45 e0             	mov    %eax,-0x20(%ebp)
4c5eec:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c5eef:	3b 45 e8             	cmp    -0x18(%ebp),%eax
4c5ef2:	7f 04                	jg     0x4c5ef8
4c5ef4:	40                   	inc    %eax
4c5ef5:	89 45 e8             	mov    %eax,-0x18(%ebp)
4c5ef8:	8b 75 ec             	mov    -0x14(%ebp),%esi
4c5efb:	4e                   	dec    %esi
4c5efc:	8b ce                	mov    %esi,%ecx
4c5efe:	8b 55 e0             	mov    -0x20(%ebp),%edx
4c5f01:	42                   	inc    %edx
4c5f02:	8b c3                	mov    %ebx,%eax
4c5f04:	e8 cb 28 f6 ff       	call   0x4287d4
4c5f09:	8b ce                	mov    %esi,%ecx
4c5f0b:	8b 55 e8             	mov    -0x18(%ebp),%edx
4c5f0e:	4a                   	dec    %edx
4c5f0f:	8b c3                	mov    %ebx,%eax
4c5f11:	e8 5e 28 f6 ff       	call   0x428774
4c5f16:	eb 3d                	jmp    0x4c5f55
4c5f18:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4c5f1b:	3b 45 fc             	cmp    -0x4(%ebp),%eax
4c5f1e:	75 35                	jne    0x4c5f55
4c5f20:	8b 45 f0             	mov    -0x10(%ebp),%eax
4c5f23:	3b 45 e0             	cmp    -0x20(%ebp),%eax
4c5f26:	7c 04                	jl     0x4c5f2c
4c5f28:	48                   	dec    %eax
4c5f29:	89 45 e0             	mov    %eax,-0x20(%ebp)
4c5f2c:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c5f2f:	3b 45 e8             	cmp    -0x18(%ebp),%eax
4c5f32:	7f 04                	jg     0x4c5f38
4c5f34:	40                   	inc    %eax
4c5f35:	89 45 e8             	mov    %eax,-0x18(%ebp)
4c5f38:	8b 55 e0             	mov    -0x20(%ebp),%edx
4c5f3b:	42                   	inc    %edx
4c5f3c:	8b 75 e4             	mov    -0x1c(%ebp),%esi
4c5f3f:	8b ce                	mov    %esi,%ecx
4c5f41:	8b c3                	mov    %ebx,%eax
4c5f43:	e8 8c 28 f6 ff       	call   0x4287d4
4c5f48:	8b 55 e8             	mov    -0x18(%ebp),%edx
4c5f4b:	4a                   	dec    %edx
4c5f4c:	8b ce                	mov    %esi,%ecx
4c5f4e:	8b c3                	mov    %ebx,%eax
4c5f50:	e8 1f 28 f6 ff       	call   0x428774
4c5f55:	8b 45 e8             	mov    -0x18(%ebp),%eax
4c5f58:	3b 45 f0             	cmp    -0x10(%ebp),%eax
4c5f5b:	75 38                	jne    0x4c5f95
4c5f5d:	8b 45 f4             	mov    -0xc(%ebp),%eax
4c5f60:	3b 45 e4             	cmp    -0x1c(%ebp),%eax
4c5f63:	7c 04                	jl     0x4c5f69
4c5f65:	48                   	dec    %eax
4c5f66:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4c5f69:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c5f6c:	3b 45 ec             	cmp    -0x14(%ebp),%eax
4c5f6f:	7f 04                	jg     0x4c5f75
4c5f71:	40                   	inc    %eax
4c5f72:	89 45 ec             	mov    %eax,-0x14(%ebp)
4c5f75:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
4c5f78:	41                   	inc    %ecx
4c5f79:	8b 75 e8             	mov    -0x18(%ebp),%esi
4c5f7c:	4e                   	dec    %esi
4c5f7d:	8b d6                	mov    %esi,%edx
4c5f7f:	8b c3                	mov    %ebx,%eax
4c5f81:	e8 4e 28 f6 ff       	call   0x4287d4
4c5f86:	8b 4d ec             	mov    -0x14(%ebp),%ecx
4c5f89:	49                   	dec    %ecx
4c5f8a:	8b d6                	mov    %esi,%edx
4c5f8c:	8b c3                	mov    %ebx,%eax
4c5f8e:	e8 e1 27 f6 ff       	call   0x428774
4c5f93:	eb 3d                	jmp    0x4c5fd2
4c5f95:	8b 45 e0             	mov    -0x20(%ebp),%eax
4c5f98:	3b 45 f8             	cmp    -0x8(%ebp),%eax
4c5f9b:	75 35                	jne    0x4c5fd2
4c5f9d:	8b 45 f4             	mov    -0xc(%ebp),%eax
4c5fa0:	3b 45 e4             	cmp    -0x1c(%ebp),%eax
4c5fa3:	7c 04                	jl     0x4c5fa9
4c5fa5:	48                   	dec    %eax
4c5fa6:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4c5fa9:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c5fac:	3b 45 ec             	cmp    -0x14(%ebp),%eax
4c5faf:	7f 04                	jg     0x4c5fb5
4c5fb1:	40                   	inc    %eax
4c5fb2:	89 45 ec             	mov    %eax,-0x14(%ebp)
4c5fb5:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
4c5fb8:	41                   	inc    %ecx
4c5fb9:	8b 75 e0             	mov    -0x20(%ebp),%esi
4c5fbc:	8b d6                	mov    %esi,%edx
4c5fbe:	8b c3                	mov    %ebx,%eax
4c5fc0:	e8 0f 28 f6 ff       	call   0x4287d4
4c5fc5:	8b 4d ec             	mov    -0x14(%ebp),%ecx
4c5fc8:	49                   	dec    %ecx
4c5fc9:	8b d6                	mov    %esi,%edx
4c5fcb:	8b c3                	mov    %ebx,%eax
4c5fcd:	e8 a2 27 f6 ff       	call   0x428774
4c5fd2:	5f                   	pop    %edi
4c5fd3:	5e                   	pop    %esi
4c5fd4:	5b                   	pop    %ebx
4c5fd5:	8b e5                	mov    %ebp,%esp
4c5fd7:	5d                   	pop    %ebp
4c5fd8:	c2 04 00             	ret    $0x4
4c5fdb:	90                   	nop
4c5fdc:	55                   	push   %ebp
4c5fdd:	8b ec                	mov    %esp,%ebp
4c5fdf:	83 c4 b8             	add    $0xffffffb8,%esp
4c5fe2:	53                   	push   %ebx
4c5fe3:	56                   	push   %esi
4c5fe4:	57                   	push   %edi
4c5fe5:	8b 75 10             	mov    0x10(%ebp),%esi
4c5fe8:	8d 7d c8             	lea    -0x38(%ebp),%edi
4c5feb:	51                   	push   %ecx
4c5fec:	b9 0a 00 00 00       	mov    $0xa,%ecx
4c5ff1:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
4c5ff3:	59                   	pop    %ecx
4c5ff4:	8b f1                	mov    %ecx,%esi
4c5ff6:	8d 7d f0             	lea    -0x10(%ebp),%edi
4c5ff9:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c5ffa:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c5ffb:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c5ffc:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c5ffd:	8b f2                	mov    %edx,%esi
4c5fff:	8b d8                	mov    %eax,%ebx
4c6001:	80 7d 0c 00          	cmpb   $0x0,0xc(%ebp)
4c6005:	0f 84 0a 01 00 00    	je     0x4c6115
4c600b:	8b 45 c8             	mov    -0x38(%ebp),%eax
4c600e:	25 04 20 00 00       	and    $0x2004,%eax
4c6013:	3d 04 20 00 00       	cmp    $0x2004,%eax
4c6018:	0f 94 c0             	sete   %al
4c601b:	f6 45 cc 01          	testb  $0x1,-0x34(%ebp)
4c601f:	75 3d                	jne    0x4c605e
4c6021:	84 c0                	test   %al,%al
4c6023:	75 39                	jne    0x4c605e
4c6025:	56                   	push   %esi
4c6026:	8d 75 f0             	lea    -0x10(%ebp),%esi
4c6029:	8d 7d b8             	lea    -0x48(%ebp),%edi
4c602c:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c602d:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c602e:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c602f:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c6030:	5e                   	pop    %esi
4c6031:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4c6034:	83 c0 02             	add    $0x2,%eax
4c6037:	89 45 c0             	mov    %eax,-0x40(%ebp)
4c603a:	8b 53 10             	mov    0x10(%ebx),%edx
4c603d:	8b 46 14             	mov    0x14(%esi),%eax
4c6040:	e8 3f 22 f6 ff       	call   0x428284
4c6045:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4c6048:	83 c0 09             	add    $0x9,%eax
4c604b:	01 45 f0             	add    %eax,-0x10(%ebp)
4c604e:	8b 93 e4 00 00 00    	mov    0xe4(%ebx),%edx
4c6054:	8b 46 10             	mov    0x10(%esi),%eax
4c6057:	e8 28 1f f6 ff       	call   0x427f84
4c605c:	eb 0e                	jmp    0x4c606c
4c605e:	8b 93 e8 00 00 00    	mov    0xe8(%ebx),%edx
4c6064:	8b 46 10             	mov    0x10(%esi),%eax
4c6067:	e8 18 1f f6 ff       	call   0x427f84
4c606c:	8b 45 c8             	mov    -0x38(%ebp),%eax
4c606f:	25 00 10 00 00       	and    $0x1000,%eax
4c6074:	3d 00 10 00 00       	cmp    $0x1000,%eax
4c6079:	75 66                	jne    0x4c60e1
4c607b:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c607e:	d1 f8                	sar    $1,%eax
4c6080:	79 03                	jns    0x4c6085
4c6082:	83 d0 00             	adc    $0x0,%eax
4c6085:	40                   	inc    %eax
4c6086:	89 45 f4             	mov    %eax,-0xc(%ebp)
4c6089:	83 45 f0 04          	addl   $0x4,-0x10(%ebp)
4c608d:	83 6d f8 02          	subl   $0x2,-0x8(%ebp)
4c6091:	8b 45 f4             	mov    -0xc(%ebp),%eax
4c6094:	40                   	inc    %eax
4c6095:	89 45 fc             	mov    %eax,-0x4(%ebp)
4c6098:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c609b:	50                   	push   %eax
4c609c:	8b 7d f4             	mov    -0xc(%ebp),%edi
4c609f:	57                   	push   %edi
4c60a0:	68 ff ff ff 00       	push   $0xffffff
4c60a5:	8b c6                	mov    %esi,%eax
4c60a7:	e8 14 2c f6 ff       	call   0x428cc0
4c60ac:	8b cf                	mov    %edi,%ecx
4c60ae:	8b 55 f0             	mov    -0x10(%ebp),%edx
4c60b1:	e8 da 2d fc ff       	call   0x488e90
4c60b6:	ff 4d f4             	decl   -0xc(%ebp)
4c60b9:	ff 4d f0             	decl   -0x10(%ebp)
4c60bc:	ff 4d f8             	decl   -0x8(%ebp)
4c60bf:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c60c2:	50                   	push   %eax
4c60c3:	8b 7d f4             	mov    -0xc(%ebp),%edi
4c60c6:	57                   	push   %edi
4c60c7:	8b 43 10             	mov    0x10(%ebx),%eax
4c60ca:	50                   	push   %eax
4c60cb:	8b c6                	mov    %esi,%eax
4c60cd:	e8 ee 2b f6 ff       	call   0x428cc0
4c60d2:	8b cf                	mov    %edi,%ecx
4c60d4:	8b 55 f0             	mov    -0x10(%ebp),%edx
4c60d7:	e8 b4 2d fc ff       	call   0x488e90
4c60dc:	e9 93 00 00 00       	jmp    0x4c6174
4c60e1:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c60e4:	d1 f8                	sar    $1,%eax
4c60e6:	79 03                	jns    0x4c60eb
4c60e8:	83 d0 00             	adc    $0x0,%eax
4c60eb:	89 45 f4             	mov    %eax,-0xc(%ebp)
4c60ee:	bb 0e 00 00 00       	mov    $0xe,%ebx
4c60f3:	eb 14                	jmp    0x4c6109
4c60f5:	68 90 90 90 00       	push   $0x909090
4c60fa:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4c60fd:	8b d3                	mov    %ebx,%edx
4c60ff:	8b c6                	mov    %esi,%eax
4c6101:	e8 4e 2b f6 ff       	call   0x428c54
4c6106:	83 c3 03             	add    $0x3,%ebx
4c6109:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c610c:	83 e8 0e             	sub    $0xe,%eax
4c610f:	3b d8                	cmp    %eax,%ebx
4c6111:	7c e2                	jl     0x4c60f5