5f2d28:	4e                   	dec    %esi
5f2d29:	0f af 70 10          	imul   0x10(%eax),%esi
5f2d2d:	03 70 14             	add    0x14(%eax),%esi
5f2d30:	03 d6                	add    %esi,%edx
5f2d32:	88 1a                	mov    %bl,(%edx)
5f2d34:	5f                   	pop    %edi
5f2d35:	5e                   	pop    %esi
5f2d36:	5b                   	pop    %ebx
5f2d37:	5d                   	pop    %ebp
5f2d38:	c2 04 00             	ret    $0x4
5f2d3b:	90                   	nop
5f2d3c:	55                   	push   %ebp
5f2d3d:	8b ec                	mov    %esp,%ebp
5f2d3f:	8b 45 08             	mov    0x8(%ebp),%eax
5f2d42:	83 c0 f8             	add    $0xfffffff8,%eax
5f2d45:	8b 55 08             	mov    0x8(%ebp),%edx
5f2d48:	8b 52 fc             	mov    -0x4(%edx),%edx
5f2d4b:	8b 08                	mov    (%eax),%ecx
5f2d4d:	3b 51 18             	cmp    0x18(%ecx),%edx
5f2d50:	7d 0b                	jge    0x5f2d5d
5f2d52:	8b 55 08             	mov    0x8(%ebp),%edx
5f2d55:	8b 52 fc             	mov    -0x4(%edx),%edx
5f2d58:	8b 08                	mov    (%eax),%ecx
5f2d5a:	89 51 18             	mov    %edx,0x18(%ecx)
5f2d5d:	8b 55 08             	mov    0x8(%ebp),%edx
5f2d60:	8b 52 fc             	mov    -0x4(%edx),%edx
5f2d63:	8b 08                	mov    (%eax),%ecx
5f2d65:	3b 51 20             	cmp    0x20(%ecx),%edx
5f2d68:	7e 0b                	jle    0x5f2d75
5f2d6a:	8b 55 08             	mov    0x8(%ebp),%edx
5f2d6d:	8b 52 fc             	mov    -0x4(%edx),%edx
5f2d70:	8b 08                	mov    (%eax),%ecx
5f2d72:	89 51 20             	mov    %edx,0x20(%ecx)
5f2d75:	8b 55 08             	mov    0x8(%ebp),%edx
5f2d78:	8b 52 f4             	mov    -0xc(%edx),%edx
5f2d7b:	8b 08                	mov    (%eax),%ecx
5f2d7d:	3b 51 1c             	cmp    0x1c(%ecx),%edx
5f2d80:	7d 0b                	jge    0x5f2d8d
5f2d82:	8b 55 08             	mov    0x8(%ebp),%edx
5f2d85:	8b 52 f4             	mov    -0xc(%edx),%edx
5f2d88:	8b 08                	mov    (%eax),%ecx
5f2d8a:	89 51 1c             	mov    %edx,0x1c(%ecx)
5f2d8d:	8b 55 08             	mov    0x8(%ebp),%edx
5f2d90:	8b 52 f4             	mov    -0xc(%edx),%edx
5f2d93:	8b 08                	mov    (%eax),%ecx
5f2d95:	3b 51 24             	cmp    0x24(%ecx),%edx
5f2d98:	7e 0b                	jle    0x5f2da5
5f2d9a:	8b 55 08             	mov    0x8(%ebp),%edx
5f2d9d:	8b 52 f4             	mov    -0xc(%edx),%edx
5f2da0:	8b 08                	mov    (%eax),%ecx
5f2da2:	89 51 24             	mov    %edx,0x24(%ecx)
5f2da5:	8b 10                	mov    (%eax),%edx
5f2da7:	83 7a 18 00          	cmpl   $0x0,0x18(%edx)
5f2dab:	7d 07                	jge    0x5f2db4
5f2dad:	8b 10                	mov    (%eax),%edx
5f2daf:	33 c9                	xor    %ecx,%ecx
5f2db1:	89 4a 18             	mov    %ecx,0x18(%edx)
5f2db4:	8b 10                	mov    (%eax),%edx
5f2db6:	8b 52 04             	mov    0x4(%edx),%edx
5f2db9:	8b 08                	mov    (%eax),%ecx
5f2dbb:	3b 51 20             	cmp    0x20(%ecx),%edx
5f2dbe:	7f 06                	jg     0x5f2dc6
5f2dc0:	4a                   	dec    %edx
5f2dc1:	8b 08                	mov    (%eax),%ecx
5f2dc3:	89 51 20             	mov    %edx,0x20(%ecx)
5f2dc6:	8b 10                	mov    (%eax),%edx
5f2dc8:	83 7a 1c 00          	cmpl   $0x0,0x1c(%edx)
5f2dcc:	7d 07                	jge    0x5f2dd5
5f2dce:	8b 10                	mov    (%eax),%edx
5f2dd0:	33 c9                	xor    %ecx,%ecx
5f2dd2:	89 4a 1c             	mov    %ecx,0x1c(%edx)
5f2dd5:	8b 10                	mov    (%eax),%edx
5f2dd7:	8b 52 08             	mov    0x8(%edx),%edx
5f2dda:	8b 08                	mov    (%eax),%ecx
5f2ddc:	3b 51 24             	cmp    0x24(%ecx),%edx
5f2ddf:	7f 06                	jg     0x5f2de7
5f2de1:	4a                   	dec    %edx
5f2de2:	8b 00                	mov    (%eax),%eax
5f2de4:	89 50 24             	mov    %edx,0x24(%eax)
5f2de7:	5d                   	pop    %ebp
5f2de8:	c3                   	ret
5f2de9:	8d 40 00             	lea    0x0(%eax),%eax
5f2dec:	55                   	push   %ebp
5f2ded:	8b ec                	mov    %esp,%ebp
5f2def:	83 c4 f4             	add    $0xfffffff4,%esp
5f2df2:	53                   	push   %ebx
5f2df3:	56                   	push   %esi
5f2df4:	57                   	push   %edi
5f2df5:	89 45 f8             	mov    %eax,-0x8(%ebp)
5f2df8:	8b 45 f8             	mov    -0x8(%ebp),%eax
5f2dfb:	c7 40 18 ff ff ff 7f 	movl   $0x7fffffff,0x18(%eax)
5f2e02:	8b 45 f8             	mov    -0x8(%ebp),%eax
5f2e05:	c7 40 1c ff ff ff 7f 	movl   $0x7fffffff,0x1c(%eax)
5f2e0c:	8b 45 f8             	mov    -0x8(%ebp),%eax
5f2e0f:	33 d2                	xor    %edx,%edx
5f2e11:	89 50 20             	mov    %edx,0x20(%eax)
5f2e14:	8b 45 f8             	mov    -0x8(%ebp),%eax
5f2e17:	33 d2                	xor    %edx,%edx
5f2e19:	89 50 24             	mov    %edx,0x24(%eax)
5f2e1c:	8b 45 f8             	mov    -0x8(%ebp),%eax
5f2e1f:	8b 78 08             	mov    0x8(%eax),%edi
5f2e22:	4f                   	dec    %edi
5f2e23:	85 ff                	test   %edi,%edi
5f2e25:	0f 8c 99 00 00 00    	jl     0x5f2ec4
5f2e2b:	47                   	inc    %edi
5f2e2c:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
5f2e33:	8b 45 f8             	mov    -0x8(%ebp),%eax
5f2e36:	8b 40 0c             	mov    0xc(%eax),%eax
5f2e39:	48                   	dec    %eax
5f2e3a:	74 07                	je     0x5f2e43
5f2e3c:	83 e8 07             	sub    $0x7,%eax
5f2e3f:	74 46                	je     0x5f2e87
5f2e41:	eb 77                	jmp    0x5f2eba
5f2e43:	8b 45 f8             	mov    -0x8(%ebp),%eax
5f2e46:	8b 58 04             	mov    0x4(%eax),%ebx
5f2e49:	4b                   	dec    %ebx
5f2e4a:	85 db                	test   %ebx,%ebx
5f2e4c:	7c 6c                	jl     0x5f2eba
5f2e4e:	43                   	inc    %ebx
5f2e4f:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
5f2e56:	8b 45 f8             	mov    -0x8(%ebp),%eax
5f2e59:	8b 40 08             	mov    0x8(%eax),%eax
5f2e5c:	2b 45 f4             	sub    -0xc(%ebp),%eax
5f2e5f:	48                   	dec    %eax
5f2e60:	8b 55 f8             	mov    -0x8(%ebp),%edx
5f2e63:	f7 6a 10             	imull  0x10(%edx)
5f2e66:	8b 55 f8             	mov    -0x8(%ebp),%edx
5f2e69:	03 42 14             	add    0x14(%edx),%eax
5f2e6c:	8b 55 fc             	mov    -0x4(%ebp),%edx
5f2e6f:	e8 8c cc fb ff       	call   0x5afb00
5f2e74:	85 c0                	test   %eax,%eax
5f2e76:	74 07                	je     0x5f2e7f
5f2e78:	55                   	push   %ebp
5f2e79:	e8 be fe ff ff       	call   0x5f2d3c
5f2e7e:	59                   	pop    %ecx
5f2e7f:	ff 45 fc             	incl   -0x4(%ebp)
5f2e82:	4b                   	dec    %ebx
5f2e83:	75 d1                	jne    0x5f2e56
5f2e85:	eb 33                	jmp    0x5f2eba
5f2e87:	8b 55 f4             	mov    -0xc(%ebp),%edx
5f2e8a:	8b 45 f8             	mov    -0x8(%ebp),%eax
5f2e8d:	e8 82 18 00 00       	call   0x5f4714
5f2e92:	8b f0                	mov    %eax,%esi
5f2e94:	8b 45 f8             	mov    -0x8(%ebp),%eax
5f2e97:	8b 58 04             	mov    0x4(%eax),%ebx
5f2e9a:	4b                   	dec    %ebx
5f2e9b:	85 db                	test   %ebx,%ebx
5f2e9d:	7c 1b                	jl     0x5f2eba
5f2e9f:	43                   	inc    %ebx
5f2ea0:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
5f2ea7:	80 3e 00             	cmpb   $0x0,(%esi)
5f2eaa:	74 07                	je     0x5f2eb3
5f2eac:	55                   	push   %ebp
5f2ead:	e8 8a fe ff ff       	call   0x5f2d3c
5f2eb2:	59                   	pop    %ecx
5f2eb3:	46                   	inc    %esi
5f2eb4:	ff 45 fc             	incl   -0x4(%ebp)
5f2eb7:	4b                   	dec    %ebx
5f2eb8:	75 ed                	jne    0x5f2ea7
5f2eba:	ff 45 f4             	incl   -0xc(%ebp)
5f2ebd:	4f                   	dec    %edi
5f2ebe:	0f 85 6f ff ff ff    	jne    0x5f2e33
5f2ec4:	5f                   	pop    %edi
5f2ec5:	5e                   	pop    %esi
5f2ec6:	5b                   	pop    %ebx
5f2ec7:	8b e5                	mov    %ebp,%esp
5f2ec9:	5d                   	pop    %ebp
5f2eca:	c3                   	ret
5f2ecb:	90                   	nop
5f2ecc:	53                   	push   %ebx
5f2ecd:	3b 50 04             	cmp    0x4(%eax),%edx
5f2ed0:	7d 0d                	jge    0x5f2edf
5f2ed2:	3b 48 08             	cmp    0x8(%eax),%ecx
5f2ed5:	7d 08                	jge    0x5f2edf
5f2ed7:	85 d2                	test   %edx,%edx
5f2ed9:	7c 04                	jl     0x5f2edf
5f2edb:	85 c9                	test   %ecx,%ecx
5f2edd:	7d 04                	jge    0x5f2ee3
5f2edf:	33 c0                	xor    %eax,%eax
5f2ee1:	5b                   	pop    %ebx
5f2ee2:	c3                   	ret
5f2ee3:	8b 58 0c             	mov    0xc(%eax),%ebx
5f2ee6:	4b                   	dec    %ebx
5f2ee7:	74 07                	je     0x5f2ef0
5f2ee9:	83 eb 07             	sub    $0x7,%ebx
5f2eec:	74 18                	je     0x5f2f06
5f2eee:	eb 2b                	jmp    0x5f2f1b
5f2ef0:	8b 58 08             	mov    0x8(%eax),%ebx
5f2ef3:	2b d9                	sub    %ecx,%ebx
5f2ef5:	4b                   	dec    %ebx
5f2ef6:	0f af 58 10          	imul   0x10(%eax),%ebx
5f2efa:	03 58 14             	add    0x14(%eax),%ebx
5f2efd:	8b c3                	mov    %ebx,%eax
5f2eff:	e8 fc cb fb ff       	call   0x5afb00
5f2f04:	eb 17                	jmp    0x5f2f1d
5f2f06:	8b 58 08             	mov    0x8(%eax),%ebx
5f2f09:	2b d9                	sub    %ecx,%ebx
5f2f0b:	4b                   	dec    %ebx
5f2f0c:	0f af 58 10          	imul   0x10(%eax),%ebx
5f2f10:	03 58 14             	add    0x14(%eax),%ebx
5f2f13:	03 d3                	add    %ebx,%edx
5f2f15:	33 c0                	xor    %eax,%eax
5f2f17:	8a 02                	mov    (%edx),%al
5f2f19:	eb 02                	jmp    0x5f2f1d
5f2f1b:	33 c0                	xor    %eax,%eax
5f2f1d:	5b                   	pop    %ebx
5f2f1e:	c3                   	ret
5f2f1f:	90                   	nop
5f2f20:	53                   	push   %ebx
5f2f21:	56                   	push   %esi
5f2f22:	57                   	push   %edi
5f2f23:	8b f9                	mov    %ecx,%edi
5f2f25:	8b f2                	mov    %edx,%esi
5f2f27:	8b d8                	mov    %eax,%ebx
5f2f29:	8b cf                	mov    %edi,%ecx
5f2f2b:	8b d6                	mov    %esi,%edx
5f2f2d:	8b c3                	mov    %ebx,%eax
5f2f2f:	e8 98 ff ff ff       	call   0x5f2ecc
5f2f34:	85 c0                	test   %eax,%eax
5f2f36:	0f 95 c0             	setne  %al
5f2f39:	5f                   	pop    %edi
5f2f3a:	5e                   	pop    %esi
5f2f3b:	5b                   	pop    %ebx
5f2f3c:	c3                   	ret
5f2f3d:	8d 40 00             	lea    0x0(%eax),%eax
5f2f40:	55                   	push   %ebp
5f2f41:	8b ec                	mov    %esp,%ebp
5f2f43:	53                   	push   %ebx
5f2f44:	56                   	push   %esi
5f2f45:	57                   	push   %edi
5f2f46:	8b f9                	mov    %ecx,%edi
5f2f48:	8b f2                	mov    %edx,%esi
5f2f4a:	8b d8                	mov    %eax,%ebx
5f2f4c:	8b c3                	mov    %ebx,%eax
5f2f4e:	e8 49 01 00 00       	call   0x5f309c
5f2f53:	89 73 04             	mov    %esi,0x4(%ebx)
5f2f56:	89 7b 08             	mov    %edi,0x8(%ebx)
5f2f59:	8b 45 08             	mov    0x8(%ebp),%eax
5f2f5c:	89 43 0c             	mov    %eax,0xc(%ebx)
5f2f5f:	b9 20 00 00 00       	mov    $0x20,%ecx
5f2f64:	8b 53 0c             	mov    0xc(%ebx),%edx
5f2f67:	8b c6                	mov    %esi,%eax
5f2f69:	e8 72 db ff ff       	call   0x5f0ae0
5f2f6e:	89 43 10             	mov    %eax,0x10(%ebx)
5f2f71:	8b c7                	mov    %edi,%eax
5f2f73:	f7 6b 10             	imull  0x10(%ebx)
5f2f76:	e8 39 61 e1 ff       	call   0x4090b4
5f2f7b:	89 43 14             	mov    %eax,0x14(%ebx)
5f2f7e:	c7 43 18 ff ff ff 7f 	movl   $0x7fffffff,0x18(%ebx)
5f2f85:	c7 43 1c ff ff ff 7f 	movl   $0x7fffffff,0x1c(%ebx)
5f2f8c:	33 c0                	xor    %eax,%eax
5f2f8e:	89 43 20             	mov    %eax,0x20(%ebx)
5f2f91:	33 c0                	xor    %eax,%eax
5f2f93:	89 43 24             	mov    %eax,0x24(%ebx)
5f2f96:	c6 43 68 00          	movb   $0x0,0x68(%ebx)
5f2f9a:	5f                   	pop    %edi
5f2f9b:	5e                   	pop    %esi
5f2f9c:	5b                   	pop    %ebx
5f2f9d:	5d                   	pop    %ebp
5f2f9e:	c2 04 00             	ret    $0x4
5f2fa1:	8d 40 00             	lea    0x0(%eax),%eax
5f2fa4:	53                   	push   %ebx
5f2fa5:	56                   	push   %esi
5f2fa6:	57                   	push   %edi
5f2fa7:	55                   	push   %ebp
5f2fa8:	83 c4 ec             	add    $0xffffffec,%esp
5f2fab:	89 4c 24 04          	mov    %ecx,0x4(%esp)
5f2faf:	89 14 24             	mov    %edx,(%esp)
5f2fb2:	8b d8                	mov    %eax,%ebx
5f2fb4:	8b 43 14             	mov    0x14(%ebx),%eax
5f2fb7:	89 44 24 08          	mov    %eax,0x8(%esp)
5f2fbb:	8b 43 10             	mov    0x10(%ebx),%eax
5f2fbe:	89 44 24 0c          	mov    %eax,0xc(%esp)
5f2fc2:	b9 20 00 00 00       	mov    $0x20,%ecx
5f2fc7:	8b 53 0c             	mov    0xc(%ebx),%edx
5f2fca:	8b 04 24             	mov    (%esp),%eax
5f2fcd:	e8 0e db ff ff       	call   0x5f0ae0
5f2fd2:	8b f0                	mov    %eax,%esi
5f2fd4:	89 73 10             	mov    %esi,0x10(%ebx)
5f2fd7:	8b 44 24 04          	mov    0x4(%esp),%eax
5f2fdb:	f7 ee                	imul   %esi
5f2fdd:	e8 d2 60 e1 ff       	call   0x4090b4
5f2fe2:	89 43 14             	mov    %eax,0x14(%ebx)
5f2fe5:	8b 53 10             	mov    0x10(%ebx),%edx
5f2fe8:	8b 44 24 0c          	mov    0xc(%esp),%eax
5f2fec:	e8 2b 64 fb ff       	call   0x5a941c
5f2ff1:	89 44 24 10          	mov    %eax,0x10(%esp)
5f2ff5:	8b 43 08             	mov    0x8(%ebx),%eax
5f2ff8:	8b f8                	mov    %eax,%edi
5f2ffa:	4f                   	dec    %edi
5f2ffb:	0f af 7c 24 0c       	imul   0xc(%esp),%edi
5f3000:	03 7c 24 08          	add    0x8(%esp),%edi
5f3004:	8b 6c 24 04          	mov    0x4(%esp),%ebp
5f3008:	4d                   	dec    %ebp
5f3009:	0f af 6b 10          	imul   0x10(%ebx),%ebp
5f300d:	03 6b 14             	add    0x14(%ebx),%ebp
5f3010:	8b 54 24 04          	mov    0x4(%esp),%edx
5f3014:	e8 03 64 fb ff       	call   0x5a941c
5f3019:	8b f0                	mov    %eax,%esi
5f301b:	4e                   	dec    %esi
5f301c:	85 f6                	test   %esi,%esi
5f301e:	7c 18                	jl     0x5f3038
5f3020:	46                   	inc    %esi
5f3021:	8b 4c 24 10          	mov    0x10(%esp),%ecx
5f3025:	8b d7                	mov    %edi,%edx
5f3027:	8b c5                	mov    %ebp,%eax
5f3029:	e8 92 4e e1 ff       	call   0x407ec0
5f302e:	2b 7c 24 0c          	sub    0xc(%esp),%edi
5f3032:	2b 6b 10             	sub    0x10(%ebx),%ebp
5f3035:	4e                   	dec    %esi
5f3036:	75 e9                	jne    0x5f3021
5f3038:	8b 44 24 08          	mov    0x8(%esp),%eax
5f303c:	e8 8b f7 e0 ff       	call   0x4027cc
5f3041:	8b 04 24             	mov    (%esp),%eax
5f3044:	89 43 04             	mov    %eax,0x4(%ebx)
5f3047:	8b 44 24 04          	mov    0x4(%esp),%eax
5f304b:	89 43 08             	mov    %eax,0x8(%ebx)
5f304e:	8b 73 18             	mov    0x18(%ebx),%esi
5f3051:	3b 73 20             	cmp    0x20(%ebx),%esi
5f3054:	7d 3b                	jge    0x5f3091
5f3056:	8b 53 04             	mov    0x4(%ebx),%edx
5f3059:	4a                   	dec    %edx
5f305a:	8b c6                	mov    %esi,%eax
5f305c:	e8 bb 63 fb ff       	call   0x5a941c
5f3061:	89 43 18             	mov    %eax,0x18(%ebx)
5f3064:	8b 53 08             	mov    0x8(%ebx),%edx
5f3067:	4a                   	dec    %edx
5f3068:	8b 43 1c             	mov    0x1c(%ebx),%eax
5f306b:	e8 ac 63 fb ff       	call   0x5a941c
5f3070:	89 43 1c             	mov    %eax,0x1c(%ebx)
5f3073:	8b 53 04             	mov    0x4(%ebx),%edx
5f3076:	4a                   	dec    %edx
5f3077:	8b 43 20             	mov    0x20(%ebx),%eax
5f307a:	e8 9d 63 fb ff       	call   0x5a941c
5f307f:	89 43 20             	mov    %eax,0x20(%ebx)
5f3082:	8b 53 08             	mov    0x8(%ebx),%edx
5f3085:	4a                   	dec    %edx
5f3086:	8b 43 24             	mov    0x24(%ebx),%eax
5f3089:	e8 8e 63 fb ff       	call   0x5a941c
5f308e:	89 43 24             	mov    %eax,0x24(%ebx)
5f3091:	83 c4 14             	add    $0x14,%esp
5f3094:	5d                   	pop    %ebp
5f3095:	5f                   	pop    %edi
5f3096:	5e                   	pop    %esi
5f3097:	5b                   	pop    %ebx
5f3098:	c3                   	ret
5f3099:	8d 40 00             	lea    0x0(%eax),%eax
5f309c:	53                   	push   %ebx
5f309d:	8b d8                	mov    %eax,%ebx
5f309f:	8b 43 58             	mov    0x58(%ebx),%eax