5b29d5:	5f                   	pop    %edi
5b29d6:	5e                   	pop    %esi
5b29d7:	5b                   	pop    %ebx
5b29d8:	8b e5                	mov    %ebp,%esp
5b29da:	5d                   	pop    %ebp
5b29db:	c2 0c 00             	ret    $0xc
5b29de:	8b c0                	mov    %eax,%eax
5b29e0:	55                   	push   %ebp
5b29e1:	8b ec                	mov    %esp,%ebp
5b29e3:	51                   	push   %ecx
5b29e4:	53                   	push   %ebx
5b29e5:	8b 45 08             	mov    0x8(%ebp),%eax
5b29e8:	8b 40 fc             	mov    -0x4(%eax),%eax
5b29eb:	8b 55 08             	mov    0x8(%ebp),%edx
5b29ee:	3b 42 f8             	cmp    -0x8(%edx),%eax
5b29f1:	7d 0e                	jge    0x5b2a01
5b29f3:	8b 45 08             	mov    0x8(%ebp),%eax
5b29f6:	8b 40 f4             	mov    -0xc(%eax),%eax
5b29f9:	8b 55 08             	mov    0x8(%ebp),%edx
5b29fc:	3b 42 f0             	cmp    -0x10(%edx),%eax
5b29ff:	7c 04                	jl     0x5b2a05
5b2a01:	33 c0                	xor    %eax,%eax
5b2a03:	eb 76                	jmp    0x5b2a7b
5b2a05:	8d 45 fd             	lea    -0x3(%ebp),%eax
5b2a08:	50                   	push   %eax
5b2a09:	8b 45 08             	mov    0x8(%ebp),%eax
5b2a0c:	8b 48 f4             	mov    -0xc(%eax),%ecx
5b2a0f:	8b 45 08             	mov    0x8(%ebp),%eax
5b2a12:	8b 50 fc             	mov    -0x4(%eax),%edx
5b2a15:	8b 45 08             	mov    0x8(%ebp),%eax
5b2a18:	8b 40 ec             	mov    -0x14(%eax),%eax
5b2a1b:	e8 ec 92 04 00       	call   0x5fbd0c
5b2a20:	8b 45 08             	mov    0x8(%ebp),%eax
5b2a23:	0f b6 40 eb          	movzbl -0x15(%eax),%eax
5b2a27:	33 d2                	xor    %edx,%edx
5b2a29:	8a 55 ff             	mov    -0x1(%ebp),%dl
5b2a2c:	2b c2                	sub    %edx,%eax
5b2a2e:	99                   	cltd
5b2a2f:	33 c2                	xor    %edx,%eax
5b2a31:	2b c2                	sub    %edx,%eax
5b2a33:	8b c8                	mov    %eax,%ecx
5b2a35:	8b 45 08             	mov    0x8(%ebp),%eax
5b2a38:	0f b6 40 ea          	movzbl -0x16(%eax),%eax
5b2a3c:	33 d2                	xor    %edx,%edx
5b2a3e:	8a 55 fe             	mov    -0x2(%ebp),%dl
5b2a41:	2b c2                	sub    %edx,%eax
5b2a43:	99                   	cltd
5b2a44:	33 c2                	xor    %edx,%eax
5b2a46:	2b c2                	sub    %edx,%eax
5b2a48:	8b d8                	mov    %eax,%ebx
5b2a4a:	8b 45 08             	mov    0x8(%ebp),%eax
5b2a4d:	0f b6 40 e9          	movzbl -0x17(%eax),%eax
5b2a51:	33 d2                	xor    %edx,%edx
5b2a53:	8a 55 fd             	mov    -0x3(%ebp),%dl
5b2a56:	2b c2                	sub    %edx,%eax
5b2a58:	99                   	cltd
5b2a59:	33 c2                	xor    %edx,%eax
5b2a5b:	2b c2                	sub    %edx,%eax
5b2a5d:	8b 55 08             	mov    0x8(%ebp),%edx
5b2a60:	3b 4a 10             	cmp    0x10(%edx),%ecx
5b2a63:	7f 10                	jg     0x5b2a75
5b2a65:	8b 55 08             	mov    0x8(%ebp),%edx
5b2a68:	3b 5a 10             	cmp    0x10(%edx),%ebx
5b2a6b:	7f 08                	jg     0x5b2a75
5b2a6d:	8b 55 08             	mov    0x8(%ebp),%edx
5b2a70:	3b 42 10             	cmp    0x10(%edx),%eax
5b2a73:	7e 04                	jle    0x5b2a79
5b2a75:	33 c0                	xor    %eax,%eax
5b2a77:	eb 02                	jmp    0x5b2a7b
5b2a79:	b0 01                	mov    $0x1,%al
5b2a7b:	5b                   	pop    %ebx
5b2a7c:	59                   	pop    %ecx
5b2a7d:	5d                   	pop    %ebp
5b2a7e:	c3                   	ret
5b2a7f:	90                   	nop
5b2a80:	55                   	push   %ebp
5b2a81:	8b ec                	mov    %esp,%ebp
5b2a83:	83 c4 84             	add    $0xffffff84,%esp
5b2a86:	53                   	push   %ebx
5b2a87:	56                   	push   %esi
5b2a88:	57                   	push   %edi
5b2a89:	89 4d f4             	mov    %ecx,-0xc(%ebp)
5b2a8c:	89 55 fc             	mov    %edx,-0x4(%ebp)
5b2a8f:	89 45 ec             	mov    %eax,-0x14(%ebp)
5b2a92:	8b 45 ec             	mov    -0x14(%ebp),%eax
5b2a95:	8b 10                	mov    (%eax),%edx
5b2a97:	ff 52 0c             	call   *0xc(%edx)
5b2a9a:	89 45 f8             	mov    %eax,-0x8(%ebp)
5b2a9d:	8b 45 ec             	mov    -0x14(%ebp),%eax
5b2aa0:	8b 10                	mov    (%eax),%edx
5b2aa2:	ff 52 08             	call   *0x8(%edx)
5b2aa5:	89 45 f0             	mov    %eax,-0x10(%ebp)
5b2aa8:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
5b2aac:	0f 8c 48 06 00 00    	jl     0x5b30fa
5b2ab2:	8b 45 fc             	mov    -0x4(%ebp),%eax
5b2ab5:	3b 45 f8             	cmp    -0x8(%ebp),%eax
5b2ab8:	0f 8d 3c 06 00 00    	jge    0x5b30fa
5b2abe:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
5b2ac2:	0f 8c 32 06 00 00    	jl     0x5b30fa
5b2ac8:	8b 45 f4             	mov    -0xc(%ebp),%eax
5b2acb:	3b 45 f0             	cmp    -0x10(%ebp),%eax
5b2ace:	0f 8d 26 06 00 00    	jge    0x5b30fa
5b2ad4:	8b 45 ec             	mov    -0x14(%ebp),%eax
5b2ad7:	8b 10                	mov    (%eax),%edx
5b2ad9:	ff 52 0c             	call   *0xc(%edx)
5b2adc:	03 c0                	add    %eax,%eax
5b2ade:	89 45 e4             	mov    %eax,-0x1c(%ebp)
5b2ae1:	b9 10 00 00 00       	mov    $0x10,%ecx
5b2ae6:	b2 01                	mov    $0x1,%dl
5b2ae8:	a1 c0 fb 5e 00       	mov    0x5efbc0,%eax
5b2aed:	e8 c2 fb 03 00       	call   0x5f26b4
5b2af2:	8b f0                	mov    %eax,%esi
5b2af4:	8b 55 e4             	mov    -0x1c(%ebp),%edx
5b2af7:	8b c6                	mov    %esi,%eax
5b2af9:	8b 08                	mov    (%eax),%ecx
5b2afb:	ff 11                	call   *(%ecx)
5b2afd:	8b 45 ec             	mov    -0x14(%ebp),%eax
5b2b00:	8b 10                	mov    (%eax),%edx
5b2b02:	ff 52 08             	call   *0x8(%edx)
5b2b05:	c1 e0 02             	shl    $0x2,%eax
5b2b08:	e8 9f fc e4 ff       	call   0x4027ac
5b2b0d:	89 45 c8             	mov    %eax,-0x38(%ebp)
5b2b10:	8b 45 f0             	mov    -0x10(%ebp),%eax
5b2b13:	48                   	dec    %eax
5b2b14:	85 c0                	test   %eax,%eax
5b2b16:	7c 2d                	jl     0x5b2b45
5b2b18:	40                   	inc    %eax
5b2b19:	89 45 8c             	mov    %eax,-0x74(%ebp)
5b2b1c:	c7 45 b4 00 00 00 00 	movl   $0x0,-0x4c(%ebp)
5b2b23:	8b 45 ec             	mov    -0x14(%ebp),%eax
5b2b26:	8b 10                	mov    (%eax),%edx
5b2b28:	ff 52 0c             	call   *0xc(%edx)
5b2b2b:	c1 e8 03             	shr    $0x3,%eax
5b2b2e:	40                   	inc    %eax
5b2b2f:	e8 80 65 e5 ff       	call   0x4090b4
5b2b34:	8b 55 c8             	mov    -0x38(%ebp),%edx
5b2b37:	8b 4d b4             	mov    -0x4c(%ebp),%ecx
5b2b3a:	89 04 8a             	mov    %eax,(%edx,%ecx,4)
5b2b3d:	ff 45 b4             	incl   -0x4c(%ebp)
5b2b40:	ff 4d 8c             	decl   -0x74(%ebp)
5b2b43:	75 de                	jne    0x5b2b23
5b2b45:	8d 45 e9             	lea    -0x17(%ebp),%eax
5b2b48:	50                   	push   %eax
5b2b49:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5b2b4c:	8b 55 fc             	mov    -0x4(%ebp),%edx
5b2b4f:	8b 45 ec             	mov    -0x14(%ebp),%eax
5b2b52:	e8 b5 91 04 00       	call   0x5fbd0c
5b2b57:	33 c0                	xor    %eax,%eax
5b2b59:	89 45 dc             	mov    %eax,-0x24(%ebp)
5b2b5c:	33 db                	xor    %ebx,%ebx
5b2b5e:	8b d3                	mov    %ebx,%edx
5b2b60:	8b c6                	mov    %esi,%eax
5b2b62:	e8 89 fb 03 00       	call   0x5f26f0
5b2b67:	8b 55 f4             	mov    -0xc(%ebp),%edx
5b2b6a:	89 10                	mov    %edx,(%eax)
5b2b6c:	8b d3                	mov    %ebx,%edx
5b2b6e:	8b c6                	mov    %esi,%eax
5b2b70:	e8 7b fb 03 00       	call   0x5f26f0
5b2b75:	8b 55 fc             	mov    -0x4(%ebp),%edx
5b2b78:	89 50 04             	mov    %edx,0x4(%eax)
5b2b7b:	8b d3                	mov    %ebx,%edx
5b2b7d:	8b c6                	mov    %esi,%eax
5b2b7f:	e8 6c fb 03 00       	call   0x5f26f0
5b2b84:	8b 55 fc             	mov    -0x4(%ebp),%edx
5b2b87:	89 50 08             	mov    %edx,0x8(%eax)
5b2b8a:	8b d3                	mov    %ebx,%edx
5b2b8c:	8b c6                	mov    %esi,%eax
5b2b8e:	e8 5d fb 03 00       	call   0x5f26f0
5b2b93:	c7 40 0c 01 00 00 00 	movl   $0x1,0xc(%eax)
5b2b9a:	43                   	inc    %ebx
5b2b9b:	8b d3                	mov    %ebx,%edx
5b2b9d:	8b c6                	mov    %esi,%eax
5b2b9f:	e8 4c fb 03 00       	call   0x5f26f0
5b2ba4:	8b 55 f4             	mov    -0xc(%ebp),%edx
5b2ba7:	42                   	inc    %edx
5b2ba8:	89 10                	mov    %edx,(%eax)
5b2baa:	8b d3                	mov    %ebx,%edx
5b2bac:	8b c6                	mov    %esi,%eax
5b2bae:	e8 3d fb 03 00       	call   0x5f26f0
5b2bb3:	8b 55 fc             	mov    -0x4(%ebp),%edx
5b2bb6:	89 50 04             	mov    %edx,0x4(%eax)
5b2bb9:	8b d3                	mov    %ebx,%edx
5b2bbb:	8b c6                	mov    %esi,%eax
5b2bbd:	e8 2e fb 03 00       	call   0x5f26f0
5b2bc2:	8b 55 fc             	mov    -0x4(%ebp),%edx
5b2bc5:	89 50 08             	mov    %edx,0x8(%eax)
5b2bc8:	8b d3                	mov    %ebx,%edx
5b2bca:	8b c6                	mov    %esi,%eax
5b2bcc:	e8 1f fb 03 00       	call   0x5f26f0
5b2bd1:	c7 40 0c ff ff ff ff 	movl   $0xffffffff,0xc(%eax)
5b2bd8:	43                   	inc    %ebx
5b2bd9:	c7 45 a4 ff ff ff 7f 	movl   $0x7fffffff,-0x5c(%ebp)
5b2be0:	c7 45 a0 ff ff ff 7f 	movl   $0x7fffffff,-0x60(%ebp)
5b2be7:	33 c0                	xor    %eax,%eax
5b2be9:	89 45 9c             	mov    %eax,-0x64(%ebp)
5b2bec:	33 c0                	xor    %eax,%eax
5b2bee:	89 45 98             	mov    %eax,-0x68(%ebp)
5b2bf1:	85 db                	test   %ebx,%ebx
5b2bf3:	0f 8e e3 03 00 00    	jle    0x5b2fdc
5b2bf9:	4b                   	dec    %ebx
5b2bfa:	85 db                	test   %ebx,%ebx
5b2bfc:	0f 8c da 03 00 00    	jl     0x5b2fdc
5b2c02:	8b 46 04             	mov    0x4(%esi),%eax
5b2c05:	48                   	dec    %eax
5b2c06:	3b d8                	cmp    %eax,%ebx
5b2c08:	7e 0c                	jle    0x5b2c16
5b2c0a:	8b 56 04             	mov    0x4(%esi),%edx
5b2c0d:	03 55 e4             	add    -0x1c(%ebp),%edx
5b2c10:	8b c6                	mov    %esi,%eax
5b2c12:	8b 08                	mov    (%eax),%ecx
5b2c14:	ff 11                	call   *(%ecx)
5b2c16:	8b d3                	mov    %ebx,%edx
5b2c18:	8b c6                	mov    %esi,%eax
5b2c1a:	e8 d1 fa 03 00       	call   0x5f26f0
5b2c1f:	8b 40 0c             	mov    0xc(%eax),%eax
5b2c22:	89 45 e0             	mov    %eax,-0x20(%ebp)
5b2c25:	8b d3                	mov    %ebx,%edx
5b2c27:	8b c6                	mov    %esi,%eax
5b2c29:	e8 c2 fa 03 00       	call   0x5f26f0
5b2c2e:	8b 00                	mov    (%eax),%eax
5b2c30:	03 45 e0             	add    -0x20(%ebp),%eax
5b2c33:	89 45 f4             	mov    %eax,-0xc(%ebp)
5b2c36:	8b d3                	mov    %ebx,%edx
5b2c38:	8b c6                	mov    %esi,%eax
5b2c3a:	e8 b1 fa 03 00       	call   0x5f26f0
5b2c3f:	8b 40 04             	mov    0x4(%eax),%eax
5b2c42:	89 45 d8             	mov    %eax,-0x28(%ebp)
5b2c45:	8b d3                	mov    %ebx,%edx
5b2c47:	8b c6                	mov    %esi,%eax
5b2c49:	e8 a2 fa 03 00       	call   0x5f26f0
5b2c4e:	8b 40 08             	mov    0x8(%eax),%eax
5b2c51:	89 45 d4             	mov    %eax,-0x2c(%ebp)
5b2c54:	8b 45 d8             	mov    -0x28(%ebp),%eax
5b2c57:	89 45 fc             	mov    %eax,-0x4(%ebp)
5b2c5a:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
5b2c5e:	0f 8c ac 00 00 00    	jl     0x5b2d10
5b2c64:	8b 45 f4             	mov    -0xc(%ebp),%eax
5b2c67:	3b 45 f0             	cmp    -0x10(%ebp),%eax
5b2c6a:	0f 8d a0 00 00 00    	jge    0x5b2d10
5b2c70:	8b 45 c8             	mov    -0x38(%ebp),%eax
5b2c73:	8b 55 f4             	mov    -0xc(%ebp),%edx
5b2c76:	8b 04 90             	mov    (%eax,%edx,4),%eax
5b2c79:	8b 55 fc             	mov    -0x4(%ebp),%edx
5b2c7c:	e8 7f ce ff ff       	call   0x5afb00
5b2c81:	8b f8                	mov    %eax,%edi
5b2c83:	eb 6a                	jmp    0x5b2cef
5b2c85:	8b 45 c8             	mov    -0x38(%ebp),%eax
5b2c88:	8b 55 f4             	mov    -0xc(%ebp),%edx
5b2c8b:	8b 04 90             	mov    (%eax,%edx,4),%eax
5b2c8e:	b9 01 00 00 00       	mov    $0x1,%ecx
5b2c93:	8b 55 fc             	mov    -0x4(%ebp),%edx
5b2c96:	e8 81 ce ff ff       	call   0x5afb1c
5b2c9b:	8b 45 fc             	mov    -0x4(%ebp),%eax
5b2c9e:	3b 45 a4             	cmp    -0x5c(%ebp),%eax
5b2ca1:	7d 06                	jge    0x5b2ca9
5b2ca3:	8b 45 fc             	mov    -0x4(%ebp),%eax
5b2ca6:	89 45 a4             	mov    %eax,-0x5c(%ebp)
5b2ca9:	8b 45 fc             	mov    -0x4(%ebp),%eax
5b2cac:	3b 45 9c             	cmp    -0x64(%ebp),%eax
5b2caf:	7e 06                	jle    0x5b2cb7
5b2cb1:	8b 45 fc             	mov    -0x4(%ebp),%eax
5b2cb4:	89 45 9c             	mov    %eax,-0x64(%ebp)
5b2cb7:	8b 45 f4             	mov    -0xc(%ebp),%eax
5b2cba:	3b 45 a0             	cmp    -0x60(%ebp),%eax
5b2cbd:	7d 06                	jge    0x5b2cc5
5b2cbf:	8b 45 f4             	mov    -0xc(%ebp),%eax
5b2cc2:	89 45 a0             	mov    %eax,-0x60(%ebp)
5b2cc5:	8b 45 f4             	mov    -0xc(%ebp),%eax
5b2cc8:	3b 45 98             	cmp    -0x68(%ebp),%eax
5b2ccb:	7e 06                	jle    0x5b2cd3
5b2ccd:	8b 45 f4             	mov    -0xc(%ebp),%eax
5b2cd0:	89 45 98             	mov    %eax,-0x68(%ebp)
5b2cd3:	ff 4d fc             	decl   -0x4(%ebp)
5b2cd6:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
5b2cda:	7c 34                	jl     0x5b2d10
5b2cdc:	8b 45 c8             	mov    -0x38(%ebp),%eax
5b2cdf:	8b 55 f4             	mov    -0xc(%ebp),%edx
5b2ce2:	8b 04 90             	mov    (%eax,%edx,4),%eax
5b2ce5:	8b 55 fc             	mov    -0x4(%ebp),%edx
5b2ce8:	e8 13 ce ff ff       	call   0x5afb00
5b2ced:	8b f8                	mov    %eax,%edi
5b2cef:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
5b2cf3:	7c 1b                	jl     0x5b2d10
5b2cf5:	8b 45 fc             	mov    -0x4(%ebp),%eax
5b2cf8:	3b 45 f8             	cmp    -0x8(%ebp),%eax
5b2cfb:	7d 13                	jge    0x5b2d10
5b2cfd:	55                   	push   %ebp
5b2cfe:	e8 dd fc ff ff       	call   0x5b29e0
5b2d03:	59                   	pop    %ecx
5b2d04:	84 c0                	test   %al,%al
5b2d06:	74 08                	je     0x5b2d10
5b2d08:	85 ff                	test   %edi,%edi
5b2d0a:	0f 84 75 ff ff ff    	je     0x5b2c85
5b2d10:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
5b2d14:	0f 8c ba 02 00 00    	jl     0x5b2fd4
5b2d1a:	8b 45 f4             	mov    -0xc(%ebp),%eax
5b2d1d:	3b 45 f0             	cmp    -0x10(%ebp),%eax
5b2d20:	7c 03                	jl     0x5b2d25
5b2d22:	f7 5d e0             	negl   -0x20(%ebp)
5b2d25:	8b 45 fc             	mov    -0x4(%ebp),%eax
5b2d28:	3b 45 d8             	cmp    -0x28(%ebp),%eax
5b2d2b:	0f 9d 45 ab          	setge  -0x55(%ebp)
5b2d2f:	80 7d ab 00          	cmpb   $0x0,-0x55(%ebp)
5b2d33:	75 71                	jne    0x5b2da6
5b2d35:	8b 45 fc             	mov    -0x4(%ebp),%eax
5b2d38:	40                   	inc    %eax
5b2d39:	89 45 dc             	mov    %eax,-0x24(%ebp)
5b2d3c:	8b 45 dc             	mov    -0x24(%ebp),%eax
5b2d3f:	3b 45 d8             	cmp    -0x28(%ebp),%eax
5b2d42:	7d 5b                	jge    0x5b2d9f
5b2d44:	8b d3                	mov    %ebx,%edx
5b2d46:	8b c6                	mov    %esi,%eax
5b2d48:	e8 a3 f9 03 00       	call   0x5f26f0
5b2d4d:	8b 55 f4             	mov    -0xc(%ebp),%edx
5b2d50:	89 10                	mov    %edx,(%eax)
5b2d52:	8b d3                	mov    %ebx,%edx
5b2d54:	8b c6                	mov    %esi,%eax
5b2d56:	e8 95 f9 03 00       	call   0x5f26f0
5b2d5b:	8b 55 dc             	mov    -0x24(%ebp),%edx
5b2d5e:	89 50 04             	mov    %edx,0x4(%eax)
5b2d61:	8b d3                	mov    %ebx,%edx
5b2d63:	8b c6                	mov    %esi,%eax
5b2d65:	e8 86 f9 03 00       	call   0x5f26f0
5b2d6a:	8b 55 d8             	mov    -0x28(%ebp),%edx
5b2d6d:	4a                   	dec    %edx
5b2d6e:	89 50 08             	mov    %edx,0x8(%eax)
5b2d71:	8b d3                	mov    %ebx,%edx
5b2d73:	8b c6                	mov    %esi,%eax
5b2d75:	e8 76 f9 03 00       	call   0x5f26f0
5b2d7a:	8b 55 e0             	mov    -0x20(%ebp),%edx
5b2d7d:	f7 da                	neg    %edx
5b2d7f:	89 50 0c             	mov    %edx,0xc(%eax)
5b2d82:	43                   	inc    %ebx
5b2d83:	85 db                	test   %ebx,%ebx
5b2d85:	0f 8c 51 02 00 00    	jl     0x5b2fdc
5b2d8b:	8b 46 04             	mov    0x4(%esi),%eax
5b2d8e:	48                   	dec    %eax
5b2d8f:	3b d8                	cmp    %eax,%ebx
5b2d91:	7e 0c                	jle    0x5b2d9f
5b2d93:	8b 56 04             	mov    0x4(%esi),%edx
5b2d96:	03 55 e4             	add    -0x1c(%ebp),%edx
5b2d99:	8b c6                	mov    %esi,%eax
5b2d9b:	8b 08                	mov    (%eax),%ecx
5b2d9d:	ff 11                	call   *(%ecx)
5b2d9f:	8b 45 d8             	mov    -0x28(%ebp),%eax
5b2da2:	40                   	inc    %eax
5b2da3:	89 45 fc             	mov    %eax,-0x4(%ebp)
5b2da6:	80 7d ab 00          	cmpb   $0x0,-0x55(%ebp)
5b2daa:	0f 85 85 01 00 00    	jne    0x5b2f35
5b2db0:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)