4eb8dc:	53                   	push   %ebx
4eb8dd:	8b d8                	mov    %eax,%ebx
4eb8df:	56                   	push   %esi
4eb8e0:	57                   	push   %edi
4eb8e1:	8b 43 20             	mov    0x20(%ebx),%eax
4eb8e4:	85 c0                	test   %eax,%eax
4eb8e6:	76 15                	jbe    0x4eb8fd
4eb8e8:	8b 53 1c             	mov    0x1c(%ebx),%edx
4eb8eb:	85 d2                	test   %edx,%edx
4eb8ed:	76 0e                	jbe    0x4eb8fd
4eb8ef:	8b 4b 3c             	mov    0x3c(%ebx),%ecx
4eb8f2:	85 c9                	test   %ecx,%ecx
4eb8f4:	7e 07                	jle    0x4eb8fd
4eb8f6:	8b 43 24             	mov    0x24(%ebx),%eax
4eb8f9:	85 c0                	test   %eax,%eax
4eb8fb:	7f 0f                	jg     0x4eb90c
4eb8fd:	8b 13                	mov    (%ebx),%edx
4eb8ff:	8b c3                	mov    %ebx,%eax
4eb901:	c7 42 14 20 00 00 00 	movl   $0x20,0x14(%edx)
4eb908:	8b 10                	mov    (%eax),%edx
4eb90a:	ff 12                	call   *(%edx)
4eb90c:	8b 4b 20             	mov    0x20(%ebx),%ecx
4eb90f:	81 f9 dc ff 00 00    	cmp    $0xffdc,%ecx
4eb915:	7f 0a                	jg     0x4eb921
4eb917:	8b 43 1c             	mov    0x1c(%ebx),%eax
4eb91a:	3d dc ff 00 00       	cmp    $0xffdc,%eax
4eb91f:	7e 16                	jle    0x4eb937
4eb921:	8b 03                	mov    (%ebx),%eax
4eb923:	c7 40 14 29 00 00 00 	movl   $0x29,0x14(%eax)
4eb92a:	c7 40 18 dc ff 00 00 	movl   $0xffdc,0x18(%eax)
4eb931:	8b c3                	mov    %ebx,%eax
4eb933:	8b 10                	mov    (%eax),%edx
4eb935:	ff 12                	call   *(%edx)
4eb937:	8b 43 1c             	mov    0x1c(%ebx),%eax
4eb93a:	f7 6b 24             	imull  0x24(%ebx)
4eb93d:	8b d0                	mov    %eax,%edx
4eb93f:	3b c2                	cmp    %edx,%eax
4eb941:	74 0f                	je     0x4eb952
4eb943:	8b 0b                	mov    (%ebx),%ecx
4eb945:	8b c3                	mov    %ebx,%eax
4eb947:	c7 41 14 46 00 00 00 	movl   $0x46,0x14(%ecx)
4eb94e:	8b 10                	mov    (%eax),%edx
4eb950:	ff 12                	call   *(%edx)
4eb952:	8b 4b 38             	mov    0x38(%ebx),%ecx
4eb955:	83 f9 08             	cmp    $0x8,%ecx
4eb958:	74 15                	je     0x4eb96f
4eb95a:	8b 03                	mov    (%ebx),%eax
4eb95c:	c7 40 14 0f 00 00 00 	movl   $0xf,0x14(%eax)
4eb963:	8b 53 38             	mov    0x38(%ebx),%edx
4eb966:	89 50 18             	mov    %edx,0x18(%eax)
4eb969:	8b c3                	mov    %ebx,%eax
4eb96b:	8b 10                	mov    (%eax),%edx
4eb96d:	ff 12                	call   *(%edx)
4eb96f:	8b 4b 3c             	mov    0x3c(%ebx),%ecx
4eb972:	83 f9 0a             	cmp    $0xa,%ecx
4eb975:	7e 1c                	jle    0x4eb993
4eb977:	8b 03                	mov    (%ebx),%eax
4eb979:	c7 40 14 1a 00 00 00 	movl   $0x1a,0x14(%eax)
4eb980:	8b 53 3c             	mov    0x3c(%ebx),%edx
4eb983:	89 50 18             	mov    %edx,0x18(%eax)
4eb986:	c7 40 1c 0a 00 00 00 	movl   $0xa,0x1c(%eax)
4eb98d:	8b c3                	mov    %ebx,%eax
4eb98f:	8b 10                	mov    (%eax),%edx
4eb991:	ff 12                	call   *(%edx)
4eb993:	c7 83 e8 00 00 00 01 	movl   $0x1,0xe8(%ebx)
4eb99a:	00 00 00
4eb99d:	c7 83 ec 00 00 00 01 	movl   $0x1,0xec(%ebx)
4eb9a4:	00 00 00
4eb9a7:	33 ff                	xor    %edi,%edi
4eb9a9:	8b 73 44             	mov    0x44(%ebx),%esi
4eb9ac:	eb 6a                	jmp    0x4eba18
4eb9ae:	8b 46 08             	mov    0x8(%esi),%eax
4eb9b1:	85 c0                	test   %eax,%eax
4eb9b3:	7e 14                	jle    0x4eb9c9
4eb9b5:	83 f8 04             	cmp    $0x4,%eax
4eb9b8:	7f 0f                	jg     0x4eb9c9
4eb9ba:	8b 56 0c             	mov    0xc(%esi),%edx
4eb9bd:	85 d2                	test   %edx,%edx
4eb9bf:	7e 08                	jle    0x4eb9c9
4eb9c1:	8b 4e 0c             	mov    0xc(%esi),%ecx
4eb9c4:	83 f9 04             	cmp    $0x4,%ecx
4eb9c7:	7e 0f                	jle    0x4eb9d8
4eb9c9:	8b 03                	mov    (%ebx),%eax
4eb9cb:	c7 40 14 12 00 00 00 	movl   $0x12,0x14(%eax)
4eb9d2:	8b c3                	mov    %ebx,%eax
4eb9d4:	8b 10                	mov    (%eax),%edx
4eb9d6:	ff 12                	call   *(%edx)
4eb9d8:	8b 8b e8 00 00 00    	mov    0xe8(%ebx),%ecx
4eb9de:	8b 46 08             	mov    0x8(%esi),%eax
4eb9e1:	3b c8                	cmp    %eax,%ecx
4eb9e3:	7e 08                	jle    0x4eb9ed
4eb9e5:	8b 93 e8 00 00 00    	mov    0xe8(%ebx),%edx
4eb9eb:	eb 03                	jmp    0x4eb9f0
4eb9ed:	8b 56 08             	mov    0x8(%esi),%edx
4eb9f0:	89 93 e8 00 00 00    	mov    %edx,0xe8(%ebx)
4eb9f6:	8b 83 ec 00 00 00    	mov    0xec(%ebx),%eax
4eb9fc:	8b 4e 0c             	mov    0xc(%esi),%ecx
4eb9ff:	3b c1                	cmp    %ecx,%eax
4eba01:	7e 08                	jle    0x4eba0b
4eba03:	8b 83 ec 00 00 00    	mov    0xec(%ebx),%eax
4eba09:	eb 03                	jmp    0x4eba0e
4eba0b:	8b 46 0c             	mov    0xc(%esi),%eax
4eba0e:	89 83 ec 00 00 00    	mov    %eax,0xec(%ebx)
4eba14:	47                   	inc    %edi
4eba15:	83 c6 54             	add    $0x54,%esi
4eba18:	8b 53 3c             	mov    0x3c(%ebx),%edx
4eba1b:	3b fa                	cmp    %edx,%edi
4eba1d:	7c 8f                	jl     0x4eb9ae
4eba1f:	33 ff                	xor    %edi,%edi
4eba21:	8b 73 44             	mov    0x44(%ebx),%esi
4eba24:	eb 6d                	jmp    0x4eba93
4eba26:	89 7e 04             	mov    %edi,0x4(%esi)
4eba29:	c7 46 24 08 00 00 00 	movl   $0x8,0x24(%esi)
4eba30:	8b 93 e8 00 00 00    	mov    0xe8(%ebx),%edx
4eba36:	c1 e2 03             	shl    $0x3,%edx
4eba39:	8b 43 1c             	mov    0x1c(%ebx),%eax
4eba3c:	0f af 46 08          	imul   0x8(%esi),%eax
4eba40:	e8 3f e5 ff ff       	call   0x4e9f84
4eba45:	89 46 1c             	mov    %eax,0x1c(%esi)
4eba48:	8b 93 ec 00 00 00    	mov    0xec(%ebx),%edx
4eba4e:	c1 e2 03             	shl    $0x3,%edx
4eba51:	8b 43 20             	mov    0x20(%ebx),%eax
4eba54:	0f af 46 0c          	imul   0xc(%esi),%eax
4eba58:	e8 27 e5 ff ff       	call   0x4e9f84
4eba5d:	89 46 20             	mov    %eax,0x20(%esi)
4eba60:	8b 43 1c             	mov    0x1c(%ebx),%eax
4eba63:	f7 6e 08             	imull  0x8(%esi)
4eba66:	8b 93 e8 00 00 00    	mov    0xe8(%ebx),%edx
4eba6c:	e8 13 e5 ff ff       	call   0x4e9f84
4eba71:	89 46 28             	mov    %eax,0x28(%esi)
4eba74:	8b 43 20             	mov    0x20(%ebx),%eax
4eba77:	f7 6e 0c             	imull  0xc(%esi)
4eba7a:	8b 93 ec 00 00 00    	mov    0xec(%ebx),%edx
4eba80:	e8 ff e4 ff ff       	call   0x4e9f84
4eba85:	89 46 2c             	mov    %eax,0x2c(%esi)
4eba88:	47                   	inc    %edi
4eba89:	c7 46 30 01 00 00 00 	movl   $0x1,0x30(%esi)
4eba90:	83 c6 54             	add    $0x54,%esi
4eba93:	8b 4b 3c             	mov    0x3c(%ebx),%ecx
4eba96:	3b f9                	cmp    %ecx,%edi
4eba98:	7c 8c                	jl     0x4eba26
4eba9a:	8b 93 ec 00 00 00    	mov    0xec(%ebx),%edx
4ebaa0:	8b 43 20             	mov    0x20(%ebx),%eax
4ebaa3:	c1 e2 03             	shl    $0x3,%edx
4ebaa6:	e8 d9 e4 ff ff       	call   0x4e9f84
4ebaab:	89 83 f0 00 00 00    	mov    %eax,0xf0(%ebx)
4ebab1:	5f                   	pop    %edi
4ebab2:	5e                   	pop    %esi
4ebab3:	5b                   	pop    %ebx
4ebab4:	c3                   	ret
4ebab5:	90                   	nop
4ebab6:	90                   	nop
4ebab7:	90                   	nop
4ebab8:	53                   	push   %ebx
4ebab9:	56                   	push   %esi
4ebaba:	8b f0                	mov    %eax,%esi
4ebabc:	57                   	push   %edi
4ebabd:	55                   	push   %ebp
4ebabe:	81 c4 b8 f5 ff ff    	add    $0xfffff5b8,%esp
4ebac4:	8b 86 a8 00 00 00    	mov    0xa8(%esi),%eax
4ebaca:	85 c0                	test   %eax,%eax
4ebacc:	7f 16                	jg     0x4ebae4
4ebace:	8b 16                	mov    (%esi),%edx
4ebad0:	c7 42 14 13 00 00 00 	movl   $0x13,0x14(%edx)
4ebad7:	8b 0e                	mov    (%esi),%ecx
4ebad9:	33 c0                	xor    %eax,%eax
4ebadb:	89 41 18             	mov    %eax,0x18(%ecx)
4ebade:	8b c6                	mov    %esi,%eax
4ebae0:	8b 10                	mov    (%eax),%edx
4ebae2:	ff 12                	call   *(%edx)
4ebae4:	8b 8e ac 00 00 00    	mov    0xac(%esi),%ecx
4ebaea:	89 0c 24             	mov    %ecx,(%esp)
4ebaed:	8b 04 24             	mov    (%esp),%eax
4ebaf0:	8b 50 14             	mov    0x14(%eax),%edx
4ebaf3:	85 d2                	test   %edx,%edx
4ebaf5:	75 0b                	jne    0x4ebb02
4ebaf7:	8b 0c 24             	mov    (%esp),%ecx
4ebafa:	8b 41 18             	mov    0x18(%ecx),%eax
4ebafd:	83 f8 3f             	cmp    $0x3f,%eax
4ebb00:	74 38                	je     0x4ebb3a
4ebb02:	c7 86 e4 00 00 00 01 	movl   $0x1,0xe4(%esi)
4ebb09:	00 00 00
4ebb0c:	8d 5c 24 48          	lea    0x48(%esp),%ebx
4ebb10:	33 c0                	xor    %eax,%eax
4ebb12:	89 44 24 0c          	mov    %eax,0xc(%esp)
4ebb16:	eb 15                	jmp    0x4ebb2d
4ebb18:	33 ff                	xor    %edi,%edi
4ebb1a:	c7 03 ff ff ff ff    	movl   $0xffffffff,(%ebx)
4ebb20:	83 c3 04             	add    $0x4,%ebx
4ebb23:	47                   	inc    %edi
4ebb24:	83 ff 40             	cmp    $0x40,%edi
4ebb27:	7c f1                	jl     0x4ebb1a
4ebb29:	ff 44 24 0c          	incl   0xc(%esp)
4ebb2d:	8b 44 24 0c          	mov    0xc(%esp),%eax
4ebb31:	8b 56 3c             	mov    0x3c(%esi),%edx
4ebb34:	3b c2                	cmp    %edx,%eax
4ebb36:	7c e0                	jl     0x4ebb18
4ebb38:	eb 2a                	jmp    0x4ebb64
4ebb3a:	33 c9                	xor    %ecx,%ecx
4ebb3c:	33 c0                	xor    %eax,%eax
4ebb3e:	89 8e e4 00 00 00    	mov    %ecx,0xe4(%esi)
4ebb44:	89 44 24 0c          	mov    %eax,0xc(%esp)
4ebb48:	8d 44 24 20          	lea    0x20(%esp),%eax
4ebb4c:	eb 0b                	jmp    0x4ebb59
4ebb4e:	33 d2                	xor    %edx,%edx
4ebb50:	89 10                	mov    %edx,(%eax)
4ebb52:	ff 44 24 0c          	incl   0xc(%esp)
4ebb56:	83 c0 04             	add    $0x4,%eax
4ebb59:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
4ebb5d:	8b 56 3c             	mov    0x3c(%esi),%edx
4ebb60:	3b ca                	cmp    %edx,%ecx
4ebb62:	7c ea                	jl     0x4ebb4e
4ebb64:	c7 44 24 04 01 00 00 	movl   $0x1,0x4(%esp)
4ebb6b:	00
4ebb6c:	e9 e2 02 00 00       	jmp    0x4ebe53
4ebb71:	8b 04 24             	mov    (%esp),%eax
4ebb74:	8b 08                	mov    (%eax),%ecx
4ebb76:	89 4c 24 08          	mov    %ecx,0x8(%esp)
4ebb7a:	8b 44 24 08          	mov    0x8(%esp),%eax
4ebb7e:	85 c0                	test   %eax,%eax
4ebb80:	7e 09                	jle    0x4ebb8b
4ebb82:	8b 54 24 08          	mov    0x8(%esp),%edx
4ebb86:	83 fa 04             	cmp    $0x4,%edx
4ebb89:	7e 1d                	jle    0x4ebba8
4ebb8b:	8b 06                	mov    (%esi),%eax
4ebb8d:	c7 40 14 1a 00 00 00 	movl   $0x1a,0x14(%eax)
4ebb94:	8b 54 24 08          	mov    0x8(%esp),%edx
4ebb98:	89 50 18             	mov    %edx,0x18(%eax)
4ebb9b:	c7 40 1c 04 00 00 00 	movl   $0x4,0x1c(%eax)
4ebba2:	8b c6                	mov    %esi,%eax
4ebba4:	8b 10                	mov    (%eax),%edx
4ebba6:	ff 12                	call   *(%edx)
4ebba8:	33 c9                	xor    %ecx,%ecx
4ebbaa:	89 4c 24 0c          	mov    %ecx,0xc(%esp)
4ebbae:	8b 04 24             	mov    (%esp),%eax
4ebbb1:	8b 54 24 08          	mov    0x8(%esp),%edx
4ebbb5:	8d 78 04             	lea    0x4(%eax),%edi
4ebbb8:	8b 44 24 0c          	mov    0xc(%esp),%eax
4ebbbc:	3b c2                	cmp    %edx,%eax
4ebbbe:	7d 5b                	jge    0x4ebc1b
4ebbc0:	8b 1f                	mov    (%edi),%ebx
4ebbc2:	85 db                	test   %ebx,%ebx
4ebbc4:	7c 07                	jl     0x4ebbcd
4ebbc6:	8b 46 3c             	mov    0x3c(%esi),%eax
4ebbc9:	3b d8                	cmp    %eax,%ebx
4ebbcb:	7c 16                	jl     0x4ebbe3
4ebbcd:	8b 06                	mov    (%esi),%eax
4ebbcf:	c7 40 14 13 00 00 00 	movl   $0x13,0x14(%eax)
4ebbd6:	8b 54 24 04          	mov    0x4(%esp),%edx
4ebbda:	89 50 18             	mov    %edx,0x18(%eax)
4ebbdd:	8b c6                	mov    %esi,%eax
4ebbdf:	8b 10                	mov    (%eax),%edx
4ebbe1:	ff 12                	call   *(%edx)
4ebbe3:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
4ebbe7:	85 c9                	test   %ecx,%ecx
4ebbe9:	7e 1d                	jle    0x4ebc08
4ebbeb:	8b 47 fc             	mov    -0x4(%edi),%eax
4ebbee:	3b d8                	cmp    %eax,%ebx
4ebbf0:	7f 16                	jg     0x4ebc08
4ebbf2:	8b 06                	mov    (%esi),%eax
4ebbf4:	c7 40 14 13 00 00 00 	movl   $0x13,0x14(%eax)
4ebbfb:	8b 54 24 04          	mov    0x4(%esp),%edx
4ebbff:	89 50 18             	mov    %edx,0x18(%eax)
4ebc02:	8b c6                	mov    %esi,%eax
4ebc04:	8b 10                	mov    (%eax),%edx
4ebc06:	ff 12                	call   *(%edx)
4ebc08:	ff 44 24 0c          	incl   0xc(%esp)
4ebc0c:	83 c7 04             	add    $0x4,%edi
4ebc0f:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
4ebc13:	8b 44 24 08          	mov    0x8(%esp),%eax
4ebc17:	3b c8                	cmp    %eax,%ecx
4ebc19:	7c a5                	jl     0x4ebbc0
4ebc1b:	8b 14 24             	mov    (%esp),%edx
4ebc1e:	8b 4a 14             	mov    0x14(%edx),%ecx
4ebc21:	89 4c 24 10          	mov    %ecx,0x10(%esp)
4ebc25:	8b 04 24             	mov    (%esp),%eax
4ebc28:	8b 50 18             	mov    0x18(%eax),%edx
4ebc2b:	89 54 24 14          	mov    %edx,0x14(%esp)
4ebc2f:	8b 0c 24             	mov    (%esp),%ecx
4ebc32:	8b 04 24             	mov    (%esp),%eax
4ebc35:	8b 69 1c             	mov    0x1c(%ecx),%ebp
4ebc38:	8b 50 20             	mov    0x20(%eax),%edx
4ebc3b:	89 54 24 18          	mov    %edx,0x18(%esp)
4ebc3f:	8b 8e e4 00 00 00    	mov    0xe4(%esi),%ecx
4ebc45:	85 c9                	test   %ecx,%ecx
4ebc47:	0f 84 78 01 00 00    	je     0x4ebdc5
4ebc4d:	8b 44 24 10          	mov    0x10(%esp),%eax
4ebc51:	85 c0                	test   %eax,%eax
4ebc53:	7c 38                	jl     0x4ebc8d
4ebc55:	8b 54 24 10          	mov    0x10(%esp),%edx
4ebc59:	83 fa 40             	cmp    $0x40,%edx
4ebc5c:	7d 2f                	jge    0x4ebc8d
4ebc5e:	8b 4c 24 14          	mov    0x14(%esp),%ecx
4ebc62:	8b 44 24 10          	mov    0x10(%esp),%eax
4ebc66:	3b c8                	cmp    %eax,%ecx
4ebc68:	7c 23                	jl     0x4ebc8d
4ebc6a:	8b 54 24 14          	mov    0x14(%esp),%edx
4ebc6e:	83 fa 40             	cmp    $0x40,%edx
4ebc71:	7d 1a                	jge    0x4ebc8d
4ebc73:	85 ed                	test   %ebp,%ebp
4ebc75:	7c 16                	jl     0x4ebc8d
4ebc77:	83 fd 0a             	cmp    $0xa,%ebp
4ebc7a:	7f 11                	jg     0x4ebc8d
4ebc7c:	8b 4c 24 18          	mov    0x18(%esp),%ecx
4ebc80:	85 c9                	test   %ecx,%ecx
4ebc82:	7c 09                	jl     0x4ebc8d
4ebc84:	8b 44 24 18          	mov    0x18(%esp),%eax
4ebc88:	83 f8 0a             	cmp    $0xa,%eax
4ebc8b:	7e 16                	jle    0x4ebca3
4ebc8d:	8b 06                	mov    (%esi),%eax
4ebc8f:	c7 40 14 11 00 00 00 	movl   $0x11,0x14(%eax)
4ebc96:	8b 54 24 04          	mov    0x4(%esp),%edx
4ebc9a:	89 50 18             	mov    %edx,0x18(%eax)
4ebc9d:	8b c6                	mov    %esi,%eax
4ebc9f:	8b 10                	mov    (%eax),%edx
4ebca1:	ff 12                	call   *(%edx)
4ebca3:	8b 4c 24 10          	mov    0x10(%esp),%ecx
4ebca7:	85 c9                	test   %ecx,%ecx
4ebca9:	75 20                	jne    0x4ebccb
4ebcab:	8b 44 24 14          	mov    0x14(%esp),%eax
4ebcaf:	85 c0                	test   %eax,%eax
4ebcb1:	74 35                	je     0x4ebce8
4ebcb3:	8b 06                	mov    (%esi),%eax
4ebcb5:	c7 40 14 11 00 00 00 	movl   $0x11,0x14(%eax)
4ebcbc:	8b 54 24 04          	mov    0x4(%esp),%edx
4ebcc0:	89 50 18             	mov    %edx,0x18(%eax)
4ebcc3:	8b c6                	mov    %esi,%eax
4ebcc5:	8b 10                	mov    (%eax),%edx
4ebcc7:	ff 12                	call   *(%edx)
4ebcc9:	eb 1d                	jmp    0x4ebce8
4ebccb:	8b 4c 24 08          	mov    0x8(%esp),%ecx
4ebccf:	49                   	dec    %ecx
4ebcd0:	74 16                	je     0x4ebce8
4ebcd2:	8b 06                	mov    (%esi),%eax
4ebcd4:	c7 40 14 11 00 00 00 	movl   $0x11,0x14(%eax)
4ebcdb:	8b 54 24 04          	mov    0x4(%esp),%edx
4ebcdf:	89 50 18             	mov    %edx,0x18(%eax)
4ebce2:	8b c6                	mov    %esi,%eax
4ebce4:	8b 10                	mov    (%eax),%edx
4ebce6:	ff 12                	call   *(%edx)
4ebce8:	33 c9                	xor    %ecx,%ecx
4ebcea:	89 4c 24 0c          	mov    %ecx,0xc(%esp)
4ebcee:	8b 04 24             	mov    (%esp),%eax
4ebcf1:	8d 50 04             	lea    0x4(%eax),%edx
4ebcf4:	89 54 24 1c          	mov    %edx,0x1c(%esp)
4ebcf8:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
4ebcfc:	8b 44 24 08          	mov    0x8(%esp),%eax
4ebd00:	3b c8                	cmp    %eax,%ecx
4ebd02:	0f 8d 43 01 00 00    	jge    0x4ebe4b
4ebd08:	8b 54 24 1c          	mov    0x1c(%esp),%edx