aeea16:	8b ce                	mov    %esi,%ecx
aeea18:	e8 1f b9 94 ff       	call   0x43a33c
aeea1d:	84 c0                	test   %al,%al
aeea1f:	75 36                	jne    0xaeea57
aeea21:	68 90 00 00 00       	push   $0x90
aeea26:	e8 52 bf 93 ff       	call   0x42a97d
aeea2b:	59                   	pop    %ecx
aeea2c:	89 45 ec             	mov    %eax,-0x14(%ebp)
aeea2f:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
aeea33:	85 c0                	test   %eax,%eax
aeea35:	74 0b                	je     0xaeea42
aeea37:	8b c8                	mov    %eax,%ecx
aeea39:	e8 a8 06 93 ff       	call   0x41f0e6
aeea3e:	8b f0                	mov    %eax,%esi
aeea40:	eb 02                	jmp    0xaeea44
aeea42:	8b f3                	mov    %ebx,%esi
aeea44:	88 5d fc             	mov    %bl,-0x4(%ebp)
aeea47:	f0 ff 46 04          	lock incl 0x4(%esi)
aeea4b:	56                   	push   %esi
aeea4c:	e8 9e 26 92 ff       	call   0x4110ef
aeea51:	a3 44 2b d8 00       	mov    %eax,0xd82b44
aeea56:	59                   	pop    %ecx
aeea57:	89 1d bc 2b d8 00    	mov    %ebx,0xd82bbc
aeea5d:	8b c6                	mov    %esi,%eax
aeea5f:	e8 b3 f9 91 ff       	call   0x40e417
aeea64:	c3                   	ret
aeea65:	cc                   	int3
aeea66:	cc                   	int3
aeea67:	cc                   	int3
aeea68:	cc                   	int3
aeea69:	cc                   	int3
aeea6a:	cc                   	int3
aeea6b:	cc                   	int3
aeea6c:	cc                   	int3
aeea6d:	cc                   	int3
aeea6e:	cc                   	int3
aeea6f:	cc                   	int3
aeea70:	cc                   	int3
aeea71:	cc                   	int3
aeea72:	cc                   	int3
aeea73:	cc                   	int3
aeea74:	cc                   	int3
aeea75:	cc                   	int3
aeea76:	cc                   	int3
aeea77:	cc                   	int3
aeea78:	cc                   	int3
aeea79:	cc                   	int3
aeea7a:	cc                   	int3
aeea7b:	cc                   	int3
aeea7c:	cc                   	int3
aeea7d:	cc                   	int3
aeea7e:	cc                   	int3
aeea7f:	cc                   	int3
aeea80:	cc                   	int3
aeea81:	cc                   	int3
aeea82:	cc                   	int3
aeea83:	cc                   	int3
aeea84:	cc                   	int3
aeea85:	cc                   	int3
aeea86:	cc                   	int3
aeea87:	cc                   	int3
aeea88:	cc                   	int3
aeea89:	6a 04                	push   $0x4
aeea8b:	b8 11 e4 bb 00       	mov    $0xbbe411,%eax
aeea90:	e8 f6 b7 91 ff       	call   0x40a28b
aeea95:	8b d9                	mov    %ecx,%ebx
aeea97:	8d 4b 2c             	lea    0x2c(%ebx),%ecx
aeea9a:	33 ff                	xor    %edi,%edi
aeea9c:	e8 e0 b2 91 ff       	call   0x409d81
aeeaa1:	8b 4b 64             	mov    0x64(%ebx),%ecx
aeeaa4:	85 c9                	test   %ecx,%ecx
aeeaa6:	74 05                	je     0xaeeaad
aeeaa8:	8b 49 18             	mov    0x18(%ecx),%ecx
aeeaab:	eb 02                	jmp    0xaeeaaf
aeeaad:	33 c9                	xor    %ecx,%ecx
aeeaaf:	85 c9                	test   %ecx,%ecx
aeeab1:	74 2a                	je     0xaeeadd
aeeab3:	6b 55 08 34          	imul   $0x34,0x8(%ebp),%edx
aeeab7:	6b 45 0c 34          	imul   $0x34,0xc(%ebp),%eax
aeeabb:	89 45 f0             	mov    %eax,-0x10(%ebp)
aeeabe:	8b 41 10             	mov    0x10(%ecx),%eax
aeeac1:	8b 44 02 30          	mov    0x30(%edx,%eax,1),%eax
aeeac5:	03 45 f0             	add    -0x10(%ebp),%eax
aeeac8:	8b 40 18             	mov    0x18(%eax),%eax
aeeacb:	03 f8                	add    %eax,%edi
aeeacd:	3b 4b 64             	cmp    0x64(%ebx),%ecx
aeead0:	74 05                	je     0xaeead7
aeead2:	8b 49 18             	mov    0x18(%ecx),%ecx
aeead5:	eb 02                	jmp    0xaeead9
aeead7:	33 c9                	xor    %ecx,%ecx
aeead9:	85 c9                	test   %ecx,%ecx
aeeadb:	75 e1                	jne    0xaeeabe
aeeadd:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
aeeae1:	8d 4b 2c             	lea    0x2c(%ebx),%ecx
aeeae4:	e8 d8 cf 93 ff       	call   0x42bac1
aeeae9:	8b c7                	mov    %edi,%eax
aeeaeb:	e8 27 f9 91 ff       	call   0x40e417
aeeaf0:	c2 08 00             	ret    $0x8
aeeaf3:	cc                   	int3
aeeaf4:	cc                   	int3
aeeaf5:	cc                   	int3
aeeaf6:	cc                   	int3
aeeaf7:	cc                   	int3
aeeaf8:	cc                   	int3
aeeaf9:	cc                   	int3
aeeafa:	cc                   	int3
aeeafb:	cc                   	int3
aeeafc:	cc                   	int3
aeeafd:	cc                   	int3
aeeafe:	cc                   	int3
aeeaff:	cc                   	int3
aeeb00:	cc                   	int3
aeeb01:	cc                   	int3
aeeb02:	cc                   	int3
aeeb03:	cc                   	int3
aeeb04:	cc                   	int3
aeeb05:	cc                   	int3
aeeb06:	cc                   	int3
aeeb07:	cc                   	int3
aeeb08:	cc                   	int3
aeeb09:	cc                   	int3
aeeb0a:	cc                   	int3
aeeb0b:	cc                   	int3
aeeb0c:	cc                   	int3
aeeb0d:	ff 09                	decl   (%ecx)
aeeb0f:	c3                   	ret
aeeb10:	8b 91 b8 00 00 00    	mov    0xb8(%ecx),%edx
aeeb16:	03 91 80 00 00 00    	add    0x80(%ecx),%edx
aeeb1c:	8b 81 bc 00 00 00    	mov    0xbc(%ecx),%eax
aeeb22:	3b c2                	cmp    %edx,%eax
aeeb24:	72 02                	jb     0xaeeb28
aeeb26:	8b c2                	mov    %edx,%eax
aeeb28:	c3                   	ret
aeeb29:	cc                   	int3
aeeb2a:	cc                   	int3
aeeb2b:	cc                   	int3
aeeb2c:	cc                   	int3
aeeb2d:	cc                   	int3
aeeb2e:	cc                   	int3
aeeb2f:	55                   	push   %ebp
aeeb30:	8b ec                	mov    %esp,%ebp
aeeb32:	51                   	push   %ecx
aeeb33:	53                   	push   %ebx
aeeb34:	8b 5d 08             	mov    0x8(%ebp),%ebx
aeeb37:	8b c1                	mov    %ecx,%eax
aeeb39:	56                   	push   %esi
aeeb3a:	33 f6                	xor    %esi,%esi
aeeb3c:	39 70 18             	cmp    %esi,0x18(%eax)
aeeb3f:	76 1b                	jbe    0xaeeb5c
aeeb41:	57                   	push   %edi
aeeb42:	8d 7b 30             	lea    0x30(%ebx),%edi
aeeb45:	8b d8                	mov    %eax,%ebx
aeeb47:	ff 37                	push   (%edi)
aeeb49:	e8 c4 fa 94 ff       	call   0x43e612
aeeb4e:	46                   	inc    %esi
aeeb4f:	8d 7f 34             	lea    0x34(%edi),%edi
aeeb52:	59                   	pop    %ecx
aeeb53:	3b 73 18             	cmp    0x18(%ebx),%esi
aeeb56:	72 ef                	jb     0xaeeb47
aeeb58:	8b 5d 08             	mov    0x8(%ebp),%ebx
aeeb5b:	5f                   	pop    %edi
aeeb5c:	53                   	push   %ebx
aeeb5d:	e8 b0 fa 94 ff       	call   0x43e612
aeeb62:	59                   	pop    %ecx
aeeb63:	5e                   	pop    %esi
aeeb64:	5b                   	pop    %ebx
aeeb65:	8b e5                	mov    %ebp,%esp
aeeb67:	5d                   	pop    %ebp
aeeb68:	c2 04 00             	ret    $0x4
aeeb6b:	cc                   	int3
aeeb6c:	cc                   	int3
aeeb6d:	cc                   	int3
aeeb6e:	cc                   	int3
aeeb6f:	cc                   	int3
aeeb70:	cc                   	int3
aeeb71:	cc                   	int3
aeeb72:	cc                   	int3
aeeb73:	cc                   	int3
aeeb74:	cc                   	int3
aeeb75:	cc                   	int3
aeeb76:	cc                   	int3
aeeb77:	cc                   	int3
aeeb78:	cc                   	int3
aeeb79:	cc                   	int3
aeeb7a:	55                   	push   %ebp
aeeb7b:	8b ec                	mov    %esp,%ebp
aeeb7d:	a1 64 2b d8 00       	mov    0xd82b64,%eax
aeeb82:	83 ec 14             	sub    $0x14,%esp
aeeb85:	53                   	push   %ebx
aeeb86:	56                   	push   %esi
aeeb87:	57                   	push   %edi
aeeb88:	8b f9                	mov    %ecx,%edi
aeeb8a:	33 c9                	xor    %ecx,%ecx
aeeb8c:	6a 0c                	push   $0xc
aeeb8e:	5a                   	pop    %edx
aeeb8f:	89 47 14             	mov    %eax,0x14(%edi)
aeeb92:	a1 60 2b d8 00       	mov    0xd82b60,%eax
aeeb97:	89 47 18             	mov    %eax,0x18(%edi)
aeeb9a:	a1 58 2b d8 00       	mov    0xd82b58,%eax
aeeb9f:	89 47 1c             	mov    %eax,0x1c(%edi)
aeeba2:	8b 47 14             	mov    0x14(%edi),%eax
aeeba5:	f7 e2                	mul    %edx
aeeba7:	0f 90 c1             	seto   %cl
aeebaa:	f7 d9                	neg    %ecx
aeebac:	0b c8                	or     %eax,%ecx
aeebae:	51                   	push   %ecx
aeebaf:	e8 e3 6b 94 ff       	call   0x435797
aeebb4:	6b 4f 14 0c          	imul   $0xc,0x14(%edi),%ecx
aeebb8:	33 db                	xor    %ebx,%ebx
aeebba:	89 47 44             	mov    %eax,0x44(%edi)
aeebbd:	51                   	push   %ecx
aeebbe:	53                   	push   %ebx
aeebbf:	50                   	push   %eax
aeebc0:	e8 f3 5b 92 ff       	call   0x4147b8
aeebc5:	8b 77 18             	mov    0x18(%edi),%esi
aeebc8:	33 c9                	xor    %ecx,%ecx
aeebca:	6a 28                	push   $0x28
aeebcc:	5a                   	pop    %edx
aeebcd:	8b c6                	mov    %esi,%eax
aeebcf:	f7 e2                	mul    %edx
aeebd1:	0f 90 c1             	seto   %cl
aeebd4:	f7 d9                	neg    %ecx
aeebd6:	0b c8                	or     %eax,%ecx
aeebd8:	33 c0                	xor    %eax,%eax
aeebda:	83 c1 04             	add    $0x4,%ecx
aeebdd:	0f 92 c0             	setb   %al
aeebe0:	f7 d8                	neg    %eax
aeebe2:	0b c1                	or     %ecx,%eax
aeebe4:	50                   	push   %eax
aeebe5:	e8 ad 6b 94 ff       	call   0x435797
aeebea:	83 c4 14             	add    $0x14,%esp
aeebed:	85 c0                	test   %eax,%eax
aeebef:	74 07                	je     0xaeebf8
aeebf1:	89 30                	mov    %esi,(%eax)
aeebf3:	8d 48 04             	lea    0x4(%eax),%ecx
aeebf6:	eb 02                	jmp    0xaeebfa
aeebf8:	8b cb                	mov    %ebx,%ecx
aeebfa:	6b 47 18 28          	imul   $0x28,0x18(%edi),%eax
aeebfe:	89 4f 48             	mov    %ecx,0x48(%edi)
aeec01:	50                   	push   %eax
aeec02:	53                   	push   %ebx
aeec03:	51                   	push   %ecx
aeec04:	e8 af 5b 92 ff       	call   0x4147b8
aeec09:	83 c4 0c             	add    $0xc,%esp
aeec0c:	83 3d 68 2b d8 00 04 	cmpl   $0x4,0xd82b68
aeec13:	0f 8c 02 01 00 00    	jl     0xaeed1b
aeec19:	33 c9                	xor    %ecx,%ecx
aeec1b:	8b d3                	mov    %ebx,%edx
aeec1d:	8b 1d 70 2b d8 00    	mov    0xd82b70,%ebx
aeec23:	89 55 f8             	mov    %edx,-0x8(%ebp)
aeec26:	89 4d fc             	mov    %ecx,-0x4(%ebp)
aeec29:	39 0d 6c 2b d8 00    	cmp    %ecx,0xd82b6c
aeec2f:	0f 86 ef 01 00 00    	jbe    0xaeee24
aeec35:	21 4d f0             	and    %ecx,-0x10(%ebp)
aeec38:	8b 03                	mov    (%ebx),%eax
aeec3a:	83 e8 01             	sub    $0x1,%eax
aeec3d:	74 60                	je     0xaeec9f
aeec3f:	48                   	dec    %eax
aeec40:	83 e8 01             	sub    $0x1,%eax
aeec43:	0f 85 b5 00 00 00    	jne    0xaeecfe
aeec49:	38 05 5c 2b d8 00    	cmp    %al,0xd82b5c
aeec4f:	0f 84 a9 00 00 00    	je     0xaeecfe
aeec55:	33 d2                	xor    %edx,%edx
aeec57:	8d 73 20             	lea    0x20(%ebx),%esi
aeec5a:	6b c1 28             	imul   $0x28,%ecx,%eax
aeec5d:	89 55 ec             	mov    %edx,-0x14(%ebp)
aeec60:	89 45 f4             	mov    %eax,-0xc(%ebp)
aeec63:	83 3e 00             	cmpl   $0x0,(%esi)
aeec66:	74 26                	je     0xaeec8e
aeec68:	0f b7 46 04          	movzwl 0x4(%esi),%eax
aeec6c:	6a 00                	push   $0x0
aeec6e:	6a 00                	push   $0x0
aeec70:	ff 36                	push   (%esi)
aeec72:	50                   	push   %eax
aeec73:	51                   	push   %ecx
aeec74:	8b 4f 48             	mov    0x48(%edi),%ecx
aeec77:	03 4d f4             	add    -0xc(%ebp),%ecx
aeec7a:	57                   	push   %edi
aeec7b:	e8 ae 47 94 ff       	call   0x43342e
aeec80:	8b 4d fc             	mov    -0x4(%ebp),%ecx
aeec83:	8b 55 ec             	mov    -0x14(%ebp),%edx
aeec86:	41                   	inc    %ecx
aeec87:	83 45 f4 28          	addl   $0x28,-0xc(%ebp)
aeec8b:	89 4d fc             	mov    %ecx,-0x4(%ebp)
aeec8e:	0f b7 43 1e          	movzwl 0x1e(%ebx),%eax
aeec92:	42                   	inc    %edx
aeec93:	83 c6 0c             	add    $0xc,%esi
aeec96:	89 55 ec             	mov    %edx,-0x14(%ebp)
aeec99:	3b d0                	cmp    %eax,%edx
aeec9b:	7c c6                	jl     0xaeec63
aeec9d:	eb 5c                	jmp    0xaeecfb
aeec9f:	80 3d 5c 2b d8 00 00 	cmpb   $0x0,0xd82b5c
aeeca6:	75 31                	jne    0xaeecd9
aeeca8:	83 7b 20 00          	cmpl   $0x0,0x20(%ebx)
aeecac:	74 2b                	je     0xaeecd9
aeecae:	0f b7 43 24          	movzwl 0x24(%ebx),%eax
aeecb2:	6a 00                	push   $0x0
aeecb4:	6a 00                	push   $0x0
aeecb6:	ff 73 20             	push   0x20(%ebx)
aeecb9:	6b f1 28             	imul   $0x28,%ecx,%esi
aeecbc:	50                   	push   %eax
aeecbd:	51                   	push   %ecx
aeecbe:	8b 4f 48             	mov    0x48(%edi),%ecx
aeecc1:	57                   	push   %edi
aeecc2:	03 ce                	add    %esi,%ecx
aeecc4:	e8 65 47 94 ff       	call   0x43342e
aeecc9:	8b 4f 48             	mov    0x48(%edi),%ecx
aeeccc:	8b 43 08             	mov    0x8(%ebx),%eax
aeeccf:	ff 45 fc             	incl   -0x4(%ebp)
aeecd2:	8b 55 f8             	mov    -0x8(%ebp),%edx
aeecd5:	89 44 0e 14          	mov    %eax,0x14(%esi,%ecx,1)
aeecd9:	8b 73 20             	mov    0x20(%ebx),%esi
aeecdc:	85 f6                	test   %esi,%esi
aeecde:	74 1e                	je     0xaeecfe
aeece0:	8b 57 44             	mov    0x44(%edi),%edx
aeece3:	03 55 f0             	add    -0x10(%ebp),%edx
aeece6:	0f b7 4b 24          	movzwl 0x24(%ebx),%ecx
aeecea:	8b 43 08             	mov    0x8(%ebx),%eax
aeeced:	83 45 f0 0c          	addl   $0xc,-0x10(%ebp)
aeecf1:	89 42 08             	mov    %eax,0x8(%edx)
aeecf4:	8b c1                	mov    %ecx,%eax
aeecf6:	89 42 04             	mov    %eax,0x4(%edx)
aeecf9:	89 32                	mov    %esi,(%edx)
aeecfb:	8b 55 f8             	mov    -0x8(%ebp),%edx
aeecfe:	03 53 04             	add    0x4(%ebx),%edx
aeed01:	03 5b 04             	add    0x4(%ebx),%ebx
aeed04:	8b 4d fc             	mov    -0x4(%ebp),%ecx
aeed07:	89 55 f8             	mov    %edx,-0x8(%ebp)
aeed0a:	3b 15 6c 2b d8 00    	cmp    0xd82b6c,%edx
aeed10:	0f 82 22 ff ff ff    	jb     0xaeec38
aeed16:	e9 09 01 00 00       	jmp    0xaeee24
aeed1b:	8b 35 70 2b d8 00    	mov    0xd82b70,%esi
aeed21:	85 f6                	test   %esi,%esi
aeed23:	75 32                	jne    0xaeed57
aeed25:	8b 0d 50 2b d8 00    	mov    0xd82b50,%ecx
aeed2b:	85 c9                	test   %ecx,%ecx
aeed2d:	74 0a                	je     0xaeed39
aeed2f:	53                   	push   %ebx
aeed30:	e8 a5 e0 94 ff       	call   0x43cdda
aeed35:	8b 30                	mov    (%eax),%esi
aeed37:	eb 06                	jmp    0xaeed3f
aeed39:	8b 35 48 2b d8 00    	mov    0xd82b48,%esi
aeed3f:	8b 4f 48             	mov    0x48(%edi),%ecx
aeed42:	53                   	push   %ebx
aeed43:	53                   	push   %ebx
aeed44:	56                   	push   %esi
aeed45:	53                   	push   %ebx
aeed46:	53                   	push   %ebx
aeed47:	57                   	push   %edi
aeed48:	e8 e1 46 94 ff       	call   0x43342e