5a6e94:	89 45 e8             	mov    %eax,-0x18(%ebp)
5a6e97:	8b 45 f8             	mov    -0x8(%ebp),%eax
5a6e9a:	2b 45 f0             	sub    -0x10(%ebp),%eax
5a6e9d:	89 45 d0             	mov    %eax,-0x30(%ebp)
5a6ea0:	8b 45 f8             	mov    -0x8(%ebp),%eax
5a6ea3:	89 45 d8             	mov    %eax,-0x28(%ebp)
5a6ea6:	8d 45 cc             	lea    -0x34(%ebp),%eax
5a6ea9:	50                   	push   %eax
5a6eaa:	8b c7                	mov    %edi,%eax
5a6eac:	e8 e7 68 e8 ff       	call   0x42d798
5a6eb1:	8b c8                	mov    %eax,%ecx
5a6eb3:	8d 55 dc             	lea    -0x24(%ebp),%edx
5a6eb6:	8b c3                	mov    %ebx,%eax
5a6eb8:	e8 8f 16 e8 ff       	call   0x42854c
5a6ebd:	5f                   	pop    %edi
5a6ebe:	5e                   	pop    %esi
5a6ebf:	5b                   	pop    %ebx
5a6ec0:	8b e5                	mov    %ebp,%esp
5a6ec2:	5d                   	pop    %ebp
5a6ec3:	c2 0c 00             	ret    $0xc
5a6ec6:	8b c0                	mov    %eax,%eax
5a6ec8:	55                   	push   %ebp
5a6ec9:	8b ec                	mov    %esp,%ebp
5a6ecb:	83 c4 cc             	add    $0xffffffcc,%esp
5a6ece:	53                   	push   %ebx
5a6ecf:	56                   	push   %esi
5a6ed0:	57                   	push   %edi
5a6ed1:	8b f9                	mov    %ecx,%edi
5a6ed3:	8b d8                	mov    %eax,%ebx
5a6ed5:	8b 75 10             	mov    0x10(%ebp),%esi
5a6ed8:	8d 45 fc             	lea    -0x4(%ebp),%eax
5a6edb:	50                   	push   %eax
5a6edc:	8d 45 f8             	lea    -0x8(%ebp),%eax
5a6edf:	50                   	push   %eax
5a6ee0:	8d 45 f4             	lea    -0xc(%ebp),%eax
5a6ee3:	50                   	push   %eax
5a6ee4:	8d 45 f0             	lea    -0x10(%ebp),%eax
5a6ee7:	50                   	push   %eax
5a6ee8:	8d 45 ec             	lea    -0x14(%ebp),%eax
5a6eeb:	50                   	push   %eax
5a6eec:	8b c6                	mov    %esi,%eax
5a6eee:	8b 4d 08             	mov    0x8(%ebp),%ecx
5a6ef1:	8b 55 0c             	mov    0xc(%ebp),%edx
5a6ef4:	e8 fb b7 ff ff       	call   0x5a26f4
5a6ef9:	56                   	push   %esi
5a6efa:	57                   	push   %edi
5a6efb:	8d 7d dc             	lea    -0x24(%ebp),%edi
5a6efe:	a5                   	movsl  %ds:(%esi),%es:(%edi)
5a6eff:	a5                   	movsl  %ds:(%esi),%es:(%edi)
5a6f00:	a5                   	movsl  %ds:(%esi),%es:(%edi)
5a6f01:	a5                   	movsl  %ds:(%esi),%es:(%edi)
5a6f02:	5f                   	pop    %edi
5a6f03:	5e                   	pop    %esi
5a6f04:	57                   	push   %edi
5a6f05:	8d 7d cc             	lea    -0x34(%ebp),%edi
5a6f08:	a5                   	movsl  %ds:(%esi),%es:(%edi)
5a6f09:	a5                   	movsl  %ds:(%esi),%es:(%edi)
5a6f0a:	a5                   	movsl  %ds:(%esi),%es:(%edi)
5a6f0b:	a5                   	movsl  %ds:(%esi),%es:(%edi)
5a6f0c:	5f                   	pop    %edi
5a6f0d:	33 c0                	xor    %eax,%eax
5a6f0f:	89 45 e0             	mov    %eax,-0x20(%ebp)
5a6f12:	8b 45 f8             	mov    -0x8(%ebp),%eax
5a6f15:	2b 45 f0             	sub    -0x10(%ebp),%eax
5a6f18:	89 45 e8             	mov    %eax,-0x18(%ebp)
5a6f1b:	33 c0                	xor    %eax,%eax
5a6f1d:	89 45 d0             	mov    %eax,-0x30(%ebp)
5a6f20:	8b 45 f8             	mov    -0x8(%ebp),%eax
5a6f23:	89 45 d8             	mov    %eax,-0x28(%ebp)
5a6f26:	8d 45 cc             	lea    -0x34(%ebp),%eax
5a6f29:	50                   	push   %eax
5a6f2a:	8d 55 dc             	lea    -0x24(%ebp),%edx
5a6f2d:	8b cb                	mov    %ebx,%ecx
5a6f2f:	8b c3                	mov    %ebx,%eax
5a6f31:	e8 16 16 e8 ff       	call   0x42854c
5a6f36:	8b 45 f8             	mov    -0x8(%ebp),%eax
5a6f39:	2b 45 f0             	sub    -0x10(%ebp),%eax
5a6f3c:	89 45 e0             	mov    %eax,-0x20(%ebp)
5a6f3f:	8b 45 f8             	mov    -0x8(%ebp),%eax
5a6f42:	89 45 e8             	mov    %eax,-0x18(%ebp)
5a6f45:	33 c0                	xor    %eax,%eax
5a6f47:	89 45 d0             	mov    %eax,-0x30(%ebp)
5a6f4a:	8b 45 f0             	mov    -0x10(%ebp),%eax
5a6f4d:	89 45 d8             	mov    %eax,-0x28(%ebp)
5a6f50:	8d 45 cc             	lea    -0x34(%ebp),%eax
5a6f53:	50                   	push   %eax
5a6f54:	8b c7                	mov    %edi,%eax
5a6f56:	e8 3d 68 e8 ff       	call   0x42d798
5a6f5b:	8b c8                	mov    %eax,%ecx
5a6f5d:	8d 55 dc             	lea    -0x24(%ebp),%edx
5a6f60:	8b c3                	mov    %ebx,%eax
5a6f62:	e8 e5 15 e8 ff       	call   0x42854c
5a6f67:	5f                   	pop    %edi
5a6f68:	5e                   	pop    %esi
5a6f69:	5b                   	pop    %ebx
5a6f6a:	8b e5                	mov    %ebp,%esp
5a6f6c:	5d                   	pop    %ebp
5a6f6d:	c2 0c 00             	ret    $0xc
5a6f70:	55                   	push   %ebp
5a6f71:	8b ec                	mov    %esp,%ebp
5a6f73:	83 c4 d8             	add    $0xffffffd8,%esp
5a6f76:	53                   	push   %ebx
5a6f77:	56                   	push   %esi
5a6f78:	57                   	push   %edi
5a6f79:	89 4d fc             	mov    %ecx,-0x4(%ebp)
5a6f7c:	8b f8                	mov    %eax,%edi
5a6f7e:	8b 75 10             	mov    0x10(%ebp),%esi
5a6f81:	8d 45 f8             	lea    -0x8(%ebp),%eax
5a6f84:	50                   	push   %eax
5a6f85:	8d 45 f4             	lea    -0xc(%ebp),%eax
5a6f88:	50                   	push   %eax
5a6f89:	8d 45 f0             	lea    -0x10(%ebp),%eax
5a6f8c:	50                   	push   %eax
5a6f8d:	8d 45 ec             	lea    -0x14(%ebp),%eax
5a6f90:	50                   	push   %eax
5a6f91:	8d 45 e8             	lea    -0x18(%ebp),%eax
5a6f94:	50                   	push   %eax
5a6f95:	8b c6                	mov    %esi,%eax
5a6f97:	8b 4d 08             	mov    0x8(%ebp),%ecx
5a6f9a:	8b 55 0c             	mov    0xc(%ebp),%edx
5a6f9d:	e8 52 b7 ff ff       	call   0x5a26f4
5a6fa2:	33 db                	xor    %ebx,%ebx
5a6fa4:	8b 45 f8             	mov    -0x8(%ebp),%eax
5a6fa7:	99                   	cltd
5a6fa8:	f7 7d e8             	idivl  -0x18(%ebp)
5a6fab:	89 45 e8             	mov    %eax,-0x18(%ebp)
5a6fae:	57                   	push   %edi
5a6faf:	8d 7d d8             	lea    -0x28(%ebp),%edi
5a6fb2:	a5                   	movsl  %ds:(%esi),%es:(%edi)
5a6fb3:	a5                   	movsl  %ds:(%esi),%es:(%edi)
5a6fb4:	a5                   	movsl  %ds:(%esi),%es:(%edi)
5a6fb5:	a5                   	movsl  %ds:(%esi),%es:(%edi)
5a6fb6:	5f                   	pop    %edi
5a6fb7:	8b 45 e8             	mov    -0x18(%ebp),%eax
5a6fba:	f7 6d 08             	imull  0x8(%ebp)
5a6fbd:	b9 64 00 00 00       	mov    $0x64,%ecx
5a6fc2:	99                   	cltd
5a6fc3:	f7 f9                	idiv   %ecx
5a6fc5:	89 45 e0             	mov    %eax,-0x20(%ebp)
5a6fc8:	eb 32                	jmp    0x5a6ffc
5a6fca:	8d 45 d8             	lea    -0x28(%ebp),%eax
5a6fcd:	50                   	push   %eax
5a6fce:	e8 15 05 e6 ff       	call   0x4074e8
5a6fd3:	8b f0                	mov    %eax,%esi
5a6fd5:	85 db                	test   %ebx,%ebx
5a6fd7:	74 12                	je     0x5a6feb
5a6fd9:	6a 02                	push   $0x2
5a6fdb:	56                   	push   %esi
5a6fdc:	53                   	push   %ebx
5a6fdd:	53                   	push   %ebx
5a6fde:	e8 65 04 e6 ff       	call   0x407448
5a6fe3:	56                   	push   %esi
5a6fe4:	e8 27 05 e6 ff       	call   0x407510
5a6fe9:	eb 02                	jmp    0x5a6fed
5a6feb:	8b de                	mov    %esi,%ebx
5a6fed:	6a 00                	push   $0x0
5a6fef:	8b 45 e8             	mov    -0x18(%ebp),%eax
5a6ff2:	50                   	push   %eax
5a6ff3:	8d 45 d8             	lea    -0x28(%ebp),%eax
5a6ff6:	50                   	push   %eax
5a6ff7:	e8 7c 0c e6 ff       	call   0x407c78
5a6ffc:	8b 45 d8             	mov    -0x28(%ebp),%eax
5a6fff:	3b 45 f8             	cmp    -0x8(%ebp),%eax
5a7002:	7c c6                	jl     0x5a6fca
5a7004:	53                   	push   %ebx
5a7005:	8b c7                	mov    %edi,%eax
5a7007:	e8 b4 1c e8 ff       	call   0x428cc0
5a700c:	50                   	push   %eax
5a700d:	e8 e6 06 e6 ff       	call   0x4076f8
5a7012:	53                   	push   %ebx
5a7013:	e8 f8 04 e6 ff       	call   0x407510
5a7018:	8b 45 fc             	mov    -0x4(%ebp),%eax
5a701b:	50                   	push   %eax
5a701c:	33 c9                	xor    %ecx,%ecx
5a701e:	33 d2                	xor    %edx,%edx
5a7020:	8b c7                	mov    %edi,%eax
5a7022:	e8 ad 15 e8 ff       	call   0x4285d4
5a7027:	6a 00                	push   $0x0
5a7029:	8b c7                	mov    %edi,%eax
5a702b:	e8 90 1c e8 ff       	call   0x428cc0
5a7030:	50                   	push   %eax
5a7031:	e8 c2 06 e6 ff       	call   0x4076f8
5a7036:	5f                   	pop    %edi
5a7037:	5e                   	pop    %esi
5a7038:	5b                   	pop    %ebx
5a7039:	8b e5                	mov    %ebp,%esp
5a703b:	5d                   	pop    %ebp
5a703c:	c2 0c 00             	ret    $0xc
5a703f:	90                   	nop
5a7040:	55                   	push   %ebp
5a7041:	8b ec                	mov    %esp,%ebp
5a7043:	83 c4 d8             	add    $0xffffffd8,%esp
5a7046:	53                   	push   %ebx
5a7047:	56                   	push   %esi
5a7048:	57                   	push   %edi
5a7049:	89 4d fc             	mov    %ecx,-0x4(%ebp)
5a704c:	8b f8                	mov    %eax,%edi
5a704e:	8b 75 10             	mov    0x10(%ebp),%esi
5a7051:	8d 45 f8             	lea    -0x8(%ebp),%eax
5a7054:	50                   	push   %eax
5a7055:	8d 45 f4             	lea    -0xc(%ebp),%eax
5a7058:	50                   	push   %eax
5a7059:	8d 45 f0             	lea    -0x10(%ebp),%eax
5a705c:	50                   	push   %eax
5a705d:	8d 45 ec             	lea    -0x14(%ebp),%eax
5a7060:	50                   	push   %eax
5a7061:	8d 45 e8             	lea    -0x18(%ebp),%eax
5a7064:	50                   	push   %eax
5a7065:	8b c6                	mov    %esi,%eax
5a7067:	8b 4d 08             	mov    0x8(%ebp),%ecx
5a706a:	8b 55 0c             	mov    0xc(%ebp),%edx
5a706d:	e8 82 b6 ff ff       	call   0x5a26f4
5a7072:	33 db                	xor    %ebx,%ebx
5a7074:	8b 45 f4             	mov    -0xc(%ebp),%eax
5a7077:	99                   	cltd
5a7078:	f7 7d e8             	idivl  -0x18(%ebp)
5a707b:	89 45 e8             	mov    %eax,-0x18(%ebp)
5a707e:	57                   	push   %edi
5a707f:	8d 7d d8             	lea    -0x28(%ebp),%edi
5a7082:	a5                   	movsl  %ds:(%esi),%es:(%edi)
5a7083:	a5                   	movsl  %ds:(%esi),%es:(%edi)
5a7084:	a5                   	movsl  %ds:(%esi),%es:(%edi)
5a7085:	a5                   	movsl  %ds:(%esi),%es:(%edi)
5a7086:	5f                   	pop    %edi
5a7087:	8b 45 e8             	mov    -0x18(%ebp),%eax
5a708a:	f7 6d 08             	imull  0x8(%ebp)
5a708d:	b9 64 00 00 00       	mov    $0x64,%ecx
5a7092:	99                   	cltd
5a7093:	f7 f9                	idiv   %ecx
5a7095:	89 45 e4             	mov    %eax,-0x1c(%ebp)
5a7098:	eb 32                	jmp    0x5a70cc
5a709a:	8d 45 d8             	lea    -0x28(%ebp),%eax
5a709d:	50                   	push   %eax
5a709e:	e8 45 04 e6 ff       	call   0x4074e8
5a70a3:	8b f0                	mov    %eax,%esi
5a70a5:	85 db                	test   %ebx,%ebx
5a70a7:	74 12                	je     0x5a70bb
5a70a9:	6a 02                	push   $0x2
5a70ab:	56                   	push   %esi
5a70ac:	53                   	push   %ebx
5a70ad:	53                   	push   %ebx
5a70ae:	e8 95 03 e6 ff       	call   0x407448
5a70b3:	56                   	push   %esi
5a70b4:	e8 57 04 e6 ff       	call   0x407510
5a70b9:	eb 02                	jmp    0x5a70bd
5a70bb:	8b de                	mov    %esi,%ebx
5a70bd:	8b 45 e8             	mov    -0x18(%ebp),%eax
5a70c0:	50                   	push   %eax
5a70c1:	6a 00                	push   $0x0
5a70c3:	8d 45 d8             	lea    -0x28(%ebp),%eax
5a70c6:	50                   	push   %eax
5a70c7:	e8 ac 0b e6 ff       	call   0x407c78
5a70cc:	8b 45 dc             	mov    -0x24(%ebp),%eax
5a70cf:	3b 45 f4             	cmp    -0xc(%ebp),%eax
5a70d2:	7c c6                	jl     0x5a709a
5a70d4:	53                   	push   %ebx
5a70d5:	8b c7                	mov    %edi,%eax
5a70d7:	e8 e4 1b e8 ff       	call   0x428cc0
5a70dc:	50                   	push   %eax
5a70dd:	e8 16 06 e6 ff       	call   0x4076f8
5a70e2:	53                   	push   %ebx
5a70e3:	e8 28 04 e6 ff       	call   0x407510
5a70e8:	8b 45 fc             	mov    -0x4(%ebp),%eax
5a70eb:	50                   	push   %eax
5a70ec:	33 c9                	xor    %ecx,%ecx
5a70ee:	33 d2                	xor    %edx,%edx
5a70f0:	8b c7                	mov    %edi,%eax
5a70f2:	e8 dd 14 e8 ff       	call   0x4285d4
5a70f7:	6a 00                	push   $0x0
5a70f9:	8b c7                	mov    %edi,%eax
5a70fb:	e8 c0 1b e8 ff       	call   0x428cc0
5a7100:	50                   	push   %eax
5a7101:	e8 f2 05 e6 ff       	call   0x4076f8
5a7106:	5f                   	pop    %edi
5a7107:	5e                   	pop    %esi
5a7108:	5b                   	pop    %ebx
5a7109:	8b e5                	mov    %ebp,%esp
5a710b:	5d                   	pop    %ebp
5a710c:	c2 0c 00             	ret    $0xc
5a710f:	90                   	nop
5a7110:	55                   	push   %ebp
5a7111:	8b ec                	mov    %esp,%ebp
5a7113:	83 c4 d8             	add    $0xffffffd8,%esp
5a7116:	53                   	push   %ebx
5a7117:	56                   	push   %esi
5a7118:	57                   	push   %edi
5a7119:	89 4d fc             	mov    %ecx,-0x4(%ebp)
5a711c:	8b f8                	mov    %eax,%edi
5a711e:	8b 75 10             	mov    0x10(%ebp),%esi
5a7121:	8d 45 f8             	lea    -0x8(%ebp),%eax
5a7124:	50                   	push   %eax
5a7125:	8d 45 f4             	lea    -0xc(%ebp),%eax
5a7128:	50                   	push   %eax
5a7129:	8d 45 f0             	lea    -0x10(%ebp),%eax
5a712c:	50                   	push   %eax
5a712d:	8d 45 ec             	lea    -0x14(%ebp),%eax
5a7130:	50                   	push   %eax
5a7131:	8d 45 e8             	lea    -0x18(%ebp),%eax
5a7134:	50                   	push   %eax
5a7135:	8b c6                	mov    %esi,%eax
5a7137:	8b 4d 08             	mov    0x8(%ebp),%ecx
5a713a:	8b 55 0c             	mov    0xc(%ebp),%edx
5a713d:	e8 b2 b5 ff ff       	call   0x5a26f4
5a7142:	33 db                	xor    %ebx,%ebx
5a7144:	8b 45 f0             	mov    -0x10(%ebp),%eax
5a7147:	89 45 e8             	mov    %eax,-0x18(%ebp)
5a714a:	83 7d e8 01          	cmpl   $0x1,-0x18(%ebp)
5a714e:	7d 07                	jge    0x5a7157
5a7150:	c7 45 e8 01 00 00 00 	movl   $0x1,-0x18(%ebp)
5a7157:	57                   	push   %edi
5a7158:	8d 7d d8             	lea    -0x28(%ebp),%edi
5a715b:	a5                   	movsl  %ds:(%esi),%es:(%edi)
5a715c:	a5                   	movsl  %ds:(%esi),%es:(%edi)
5a715d:	a5                   	movsl  %ds:(%esi),%es:(%edi)
5a715e:	a5                   	movsl  %ds:(%esi),%es:(%edi)
5a715f:	5f                   	pop    %edi
5a7160:	8b 45 e8             	mov    -0x18(%ebp),%eax
5a7163:	f7 6d 08             	imull  0x8(%ebp)
5a7166:	b9 64 00 00 00       	mov    $0x64,%ecx
5a716b:	99                   	cltd
5a716c:	f7 f9                	idiv   %ecx
5a716e:	89 45 e0             	mov    %eax,-0x20(%ebp)
5a7171:	eb 32                	jmp    0x5a71a5
5a7173:	8d 45 d8             	lea    -0x28(%ebp),%eax
5a7176:	50                   	push   %eax
5a7177:	e8 6c 03 e6 ff       	call   0x4074e8
5a717c:	8b f0                	mov    %eax,%esi
5a717e:	85 db                	test   %ebx,%ebx
5a7180:	74 12                	je     0x5a7194
5a7182:	6a 02                	push   $0x2
5a7184:	56                   	push   %esi
5a7185:	53                   	push   %ebx
5a7186:	53                   	push   %ebx
5a7187:	e8 bc 02 e6 ff       	call   0x407448
5a718c:	56                   	push   %esi
5a718d:	e8 7e 03 e6 ff       	call   0x407510
5a7192:	eb 02                	jmp    0x5a7196
5a7194:	8b de                	mov    %esi,%ebx
5a7196:	6a 00                	push   $0x0
5a7198:	8b 45 e8             	mov    -0x18(%ebp),%eax
5a719b:	50                   	push   %eax
5a719c:	8d 45 d8             	lea    -0x28(%ebp),%eax
5a719f:	50                   	push   %eax
5a71a0:	e8 d3 0a e6 ff       	call   0x407c78
5a71a5:	8b 45 d8             	mov    -0x28(%ebp),%eax
5a71a8:	3b 45 f8             	cmp    -0x8(%ebp),%eax
5a71ab:	7c c6                	jl     0x5a7173
5a71ad:	53                   	push   %ebx
5a71ae:	8b c7                	mov    %edi,%eax
5a71b0:	e8 0b 1b e8 ff       	call   0x428cc0