46db48:	e8 34 0d 00 00       	call   0x46e881
46db4d:	85 f6                	test   %esi,%esi
46db4f:	74 08                	je     0x46db59
46db51:	51                   	push   %ecx
46db52:	8b ce                	mov    %esi,%ecx
46db54:	e8 a7 6e fd ff       	call   0x444a00
46db59:	83 25 84 21 4c 00 00 	andl   $0x0,0x4c2184
46db60:	b0 01                	mov    $0x1,%al
46db62:	5e                   	pop    %esi
46db63:	eb 2d                	jmp    0x46db92
46db65:	80 79 0c 00          	cmpb   $0x0,0xc(%ecx)
46db69:	75 25                	jne    0x46db90
46db6b:	83 3d 94 17 4c 00 00 	cmpl   $0x0,0x4c1794
46db72:	75 14                	jne    0x46db88
46db74:	a1 84 21 4c 00       	mov    0x4c2184,%eax
46db79:	83 f8 64             	cmp    $0x64,%eax
46db7c:	7d 0a                	jge    0x46db88
46db7e:	40                   	inc    %eax
46db7f:	a3 84 21 4c 00       	mov    %eax,0x4c2184
46db84:	6a 00                	push   $0x0
46db86:	eb 02                	jmp    0x46db8a
46db88:	6a 0a                	push   $0xa
46db8a:	ff 15 70 d1 48 00    	call   *0x48d170
46db90:	32 c0                	xor    %al,%al
46db92:	5f                   	pop    %edi
46db93:	5d                   	pop    %ebp
46db94:	c2 04 00             	ret    $0x4
46db97:	55                   	push   %ebp
46db98:	8b ec                	mov    %esp,%ebp
46db9a:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
46db9e:	74 17                	je     0x46dbb7
46dba0:	ff 75 10             	push   0x10(%ebp)
46dba3:	b9 28 16 4c 00       	mov    $0x4c1628,%ecx
46dba8:	e8 a1 d7 fa ff       	call   0x41b34e
46dbad:	8b c8                	mov    %eax,%ecx
46dbaf:	89 0d 94 16 4c 00    	mov    %ecx,0x4c1694
46dbb5:	eb 06                	jmp    0x46dbbd
46dbb7:	8b 0d 94 16 4c 00    	mov    0x4c1694,%ecx
46dbbd:	83 f9 ff             	cmp    $0xffffffff,%ecx
46dbc0:	75 04                	jne    0x46dbc6
46dbc2:	33 c0                	xor    %eax,%eax
46dbc4:	eb 2d                	jmp    0x46dbf3
46dbc6:	a1 88 16 4c 00       	mov    0x4c1688,%eax
46dbcb:	57                   	push   %edi
46dbcc:	8b 04 88             	mov    (%eax,%ecx,4),%eax
46dbcf:	6a f0                	push   $0xfffffff0
46dbd1:	8b 00                	mov    (%eax),%eax
46dbd3:	8b 38                	mov    (%eax),%edi
46dbd5:	57                   	push   %edi
46dbd6:	ff 15 44 d6 48 00    	call   *0x48d644
46dbdc:	8b 4d 08             	mov    0x8(%ebp),%ecx
46dbdf:	6a ec                	push   $0xffffffec
46dbe1:	57                   	push   %edi
46dbe2:	89 01                	mov    %eax,(%ecx)
46dbe4:	ff 15 44 d6 48 00    	call   *0x48d644
46dbea:	8b 4d 0c             	mov    0xc(%ebp),%ecx
46dbed:	5f                   	pop    %edi
46dbee:	89 01                	mov    %eax,(%ecx)
46dbf0:	33 c0                	xor    %eax,%eax
46dbf2:	40                   	inc    %eax
46dbf3:	5d                   	pop    %ebp
46dbf4:	c2 0c 00             	ret    $0xc
46dbf7:	55                   	push   %ebp
46dbf8:	8b ec                	mov    %esp,%ebp
46dbfa:	83 ec 18             	sub    $0x18,%esp
46dbfd:	56                   	push   %esi
46dbfe:	8b 35 f4 16 4c 00    	mov    0x4c16f4,%esi
46dc04:	57                   	push   %edi
46dc05:	8b 7d 08             	mov    0x8(%ebp),%edi
46dc08:	89 75 fc             	mov    %esi,-0x4(%ebp)
46dc0b:	51                   	push   %ecx
46dc0c:	8b c4                	mov    %esp,%eax
46dc0e:	8d 4d fc             	lea    -0x4(%ebp),%ecx
46dc11:	83 20 00             	andl   $0x0,(%eax)
46dc14:	e8 fd 4c f9 ff       	call   0x402916
46dc19:	84 c0                	test   %al,%al
46dc1b:	74 3d                	je     0x46dc5a
46dc1d:	8b 06                	mov    (%esi),%eax
46dc1f:	39 38                	cmp    %edi,(%eax)
46dc21:	74 11                	je     0x46dc34
46dc23:	8d 45 08             	lea    0x8(%ebp),%eax
46dc26:	50                   	push   %eax
46dc27:	8d 4d fc             	lea    -0x4(%ebp),%ecx
46dc2a:	e8 4f ed fd ff       	call   0x44c97e
46dc2f:	8b 75 fc             	mov    -0x4(%ebp),%esi
46dc32:	eb d7                	jmp    0x46dc0b
46dc34:	8b 45 0c             	mov    0xc(%ebp),%eax
46dc37:	83 78 04 00          	cmpl   $0x0,0x4(%eax)
46dc3b:	75 10                	jne    0x46dc4d
46dc3d:	8d 45 fc             	lea    -0x4(%ebp),%eax
46dc40:	50                   	push   %eax
46dc41:	b9 f4 16 4c 00       	mov    $0x4c16f4,%ecx
46dc46:	e8 24 0d 00 00       	call   0x46e96f
46dc4b:	eb 44                	jmp    0x46dc91
46dc4d:	8b 0e                	mov    (%esi),%ecx
46dc4f:	50                   	push   %eax
46dc50:	83 c1 04             	add    $0x4,%ecx
46dc53:	e8 95 92 f9 ff       	call   0x406eed
46dc58:	eb 37                	jmp    0x46dc91
46dc5a:	8b 75 0c             	mov    0xc(%ebp),%esi
46dc5d:	83 7e 04 00          	cmpl   $0x0,0x4(%esi)
46dc61:	75 04                	jne    0x46dc67
46dc63:	33 c0                	xor    %eax,%eax
46dc65:	eb 2d                	jmp    0x46dc94
46dc67:	8d 4d ec             	lea    -0x14(%ebp),%ecx
46dc6a:	e8 88 fb f9 ff       	call   0x40d7f7
46dc6f:	56                   	push   %esi
46dc70:	8d 4d ec             	lea    -0x14(%ebp),%ecx
46dc73:	89 7d e8             	mov    %edi,-0x18(%ebp)
46dc76:	e8 72 92 f9 ff       	call   0x406eed
46dc7b:	8d 45 e8             	lea    -0x18(%ebp),%eax
46dc7e:	50                   	push   %eax
46dc7f:	b9 f4 16 4c 00       	mov    $0x4c16f4,%ecx
46dc84:	e8 4e 0c 00 00       	call   0x46e8d7
46dc89:	8d 4d ec             	lea    -0x14(%ebp),%ecx
46dc8c:	e8 a6 ee f9 ff       	call   0x40cb37
46dc91:	33 c0                	xor    %eax,%eax
46dc93:	40                   	inc    %eax
46dc94:	5f                   	pop    %edi
46dc95:	5e                   	pop    %esi
46dc96:	c9                   	leave
46dc97:	c2 08 00             	ret    $0x8
46dc9a:	55                   	push   %ebp
46dc9b:	8b ec                	mov    %esp,%ebp
46dc9d:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
46dca1:	74 17                	je     0x46dcba
46dca3:	ff 75 10             	push   0x10(%ebp)
46dca6:	b9 28 16 4c 00       	mov    $0x4c1628,%ecx
46dcab:	e8 9e d6 fa ff       	call   0x41b34e
46dcb0:	8b c8                	mov    %eax,%ecx
46dcb2:	89 0d 94 16 4c 00    	mov    %ecx,0x4c1694
46dcb8:	eb 06                	jmp    0x46dcc0
46dcba:	8b 0d 94 16 4c 00    	mov    0x4c1694,%ecx
46dcc0:	83 f9 ff             	cmp    $0xffffffff,%ecx
46dcc3:	74 57                	je     0x46dd1c
46dcc5:	a1 88 16 4c 00       	mov    0x4c1688,%eax
46dcca:	56                   	push   %esi
46dccb:	8b 04 88             	mov    (%eax,%ecx,4),%eax
46dcce:	8b 30                	mov    (%eax),%esi
46dcd0:	83 7e 18 00          	cmpl   $0x0,0x18(%esi)
46dcd4:	74 1c                	je     0x46dcf2
46dcd6:	39 0d 50 16 4c 00    	cmp    %ecx,0x4c1650
46dcdc:	75 07                	jne    0x46dce5
46dcde:	83 0d 50 16 4c 00 ff 	orl    $0xffffffff,0x4c1650
46dce5:	ff 76 18             	push   0x18(%esi)
46dce8:	ff 15 28 d5 48 00    	call   *0x48d528
46dcee:	83 66 18 00          	andl   $0x0,0x18(%esi)
46dcf2:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
46dcf6:	74 23                	je     0x46dd1b
46dcf8:	ff 75 0c             	push   0xc(%ebp)
46dcfb:	ff 75 08             	push   0x8(%ebp)
46dcfe:	ff 15 2c d5 48 00    	call   *0x48d52c
46dd04:	89 46 18             	mov    %eax,0x18(%esi)
46dd07:	ff 15 1c d7 48 00    	call   *0x48d71c
46dd0d:	39 06                	cmp    %eax,(%esi)
46dd0f:	75 0a                	jne    0x46dd1b
46dd11:	a1 94 16 4c 00       	mov    0x4c1694,%eax
46dd16:	a3 50 16 4c 00       	mov    %eax,0x4c1650
46dd1b:	5e                   	pop    %esi
46dd1c:	5d                   	pop    %ebp
46dd1d:	c2 0c 00             	ret    $0xc
46dd20:	55                   	push   %ebp
46dd21:	8b ec                	mov    %esp,%ebp
46dd23:	83 7d 18 00          	cmpl   $0x0,0x18(%ebp)
46dd27:	74 17                	je     0x46dd40
46dd29:	ff 75 18             	push   0x18(%ebp)
46dd2c:	b9 28 16 4c 00       	mov    $0x4c1628,%ecx
46dd31:	e8 18 d6 fa ff       	call   0x41b34e
46dd36:	8b c8                	mov    %eax,%ecx
46dd38:	89 0d 94 16 4c 00    	mov    %ecx,0x4c1694
46dd3e:	eb 06                	jmp    0x46dd46
46dd40:	8b 0d 94 16 4c 00    	mov    0x4c1694,%ecx
46dd46:	83 f9 ff             	cmp    $0xffffffff,%ecx
46dd49:	75 04                	jne    0x46dd4f
46dd4b:	33 c0                	xor    %eax,%eax
46dd4d:	eb 2d                	jmp    0x46dd7c
46dd4f:	a1 88 16 4c 00       	mov    0x4c1688,%eax
46dd54:	8b 04 88             	mov    (%eax,%ecx,4),%eax
46dd57:	8b 08                	mov    (%eax),%ecx
46dd59:	8b 45 08             	mov    0x8(%ebp),%eax
46dd5c:	89 41 58             	mov    %eax,0x58(%ecx)
46dd5f:	8b 45 0c             	mov    0xc(%ebp),%eax
46dd62:	89 41 5c             	mov    %eax,0x5c(%ecx)
46dd65:	8b 45 10             	mov    0x10(%ebp),%eax
46dd68:	85 c0                	test   %eax,%eax
46dd6a:	7e 03                	jle    0x46dd6f
46dd6c:	89 41 60             	mov    %eax,0x60(%ecx)
46dd6f:	8b 45 14             	mov    0x14(%ebp),%eax
46dd72:	85 c0                	test   %eax,%eax
46dd74:	7e 03                	jle    0x46dd79
46dd76:	89 41 64             	mov    %eax,0x64(%ecx)
46dd79:	33 c0                	xor    %eax,%eax
46dd7b:	40                   	inc    %eax
46dd7c:	5d                   	pop    %ebp
46dd7d:	c2 14 00             	ret    $0x14
46dd80:	55                   	push   %ebp
46dd81:	8b ec                	mov    %esp,%ebp
46dd83:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
46dd87:	74 17                	je     0x46dda0
46dd89:	ff 75 10             	push   0x10(%ebp)
46dd8c:	b9 28 16 4c 00       	mov    $0x4c1628,%ecx
46dd91:	e8 b8 d5 fa ff       	call   0x41b34e
46dd96:	8b c8                	mov    %eax,%ecx
46dd98:	89 0d 94 16 4c 00    	mov    %ecx,0x4c1694
46dd9e:	eb 06                	jmp    0x46dda6
46dda0:	8b 0d 94 16 4c 00    	mov    0x4c1694,%ecx
46dda6:	83 f9 ff             	cmp    $0xffffffff,%ecx
46dda9:	74 24                	je     0x46ddcf
46ddab:	a1 88 16 4c 00       	mov    0x4c1688,%eax
46ddb0:	6a 00                	push   $0x0
46ddb2:	8b 04 88             	mov    (%eax,%ecx,4),%eax
46ddb5:	6a 00                	push   $0x0
46ddb7:	8b 08                	mov    (%eax),%ecx
46ddb9:	8b 45 08             	mov    0x8(%ebp),%eax
46ddbc:	6a 20                	push   $0x20
46ddbe:	ff 31                	push   (%ecx)
46ddc0:	89 41 10             	mov    %eax,0x10(%ecx)
46ddc3:	8b 45 0c             	mov    0xc(%ebp),%eax
46ddc6:	89 41 14             	mov    %eax,0x14(%ecx)
46ddc9:	ff 15 78 d6 48 00    	call   *0x48d678
46ddcf:	5d                   	pop    %ebp
46ddd0:	c2 0c 00             	ret    $0xc
46ddd3:	55                   	push   %ebp
46ddd4:	8b ec                	mov    %esp,%ebp
46ddd6:	83 7d 18 00          	cmpl   $0x0,0x18(%ebp)
46ddda:	74 17                	je     0x46ddf3
46dddc:	ff 75 18             	push   0x18(%ebp)
46dddf:	b9 28 16 4c 00       	mov    $0x4c1628,%ecx
46dde4:	e8 65 d5 fa ff       	call   0x41b34e
46dde9:	8b c8                	mov    %eax,%ecx
46ddeb:	89 0d 94 16 4c 00    	mov    %ecx,0x4c1694
46ddf1:	eb 06                	jmp    0x46ddf9
46ddf3:	8b 0d 94 16 4c 00    	mov    0x4c1694,%ecx
46ddf9:	83 f9 ff             	cmp    $0xffffffff,%ecx
46ddfc:	75 04                	jne    0x46de02
46ddfe:	33 c0                	xor    %eax,%eax
46de00:	eb 63                	jmp    0x46de65
46de02:	dd 45 1c             	fldl   0x1c(%ebp)
46de05:	a1 88 16 4c 00       	mov    0x4c1688,%eax
46de0a:	dd 05 10 6a 4b 00    	fldl   0x4b6a10
46de10:	56                   	push   %esi
46de11:	8b 04 88             	mov    (%eax,%ecx,4),%eax
46de14:	dd e9                	fucomp %st(1)
46de16:	8b 30                	mov    (%eax),%esi
46de18:	df e0                	fnstsw %ax
46de1a:	f6 c4 44             	test   $0x44,%ah
46de1d:	7b 10                	jnp    0x46de2f
46de1f:	dc 0d 18 27 4b 00    	fmull  0x4b2718
46de25:	e8 a6 3a 00 00       	call   0x4718d0
46de2a:	89 46 7c             	mov    %eax,0x7c(%esi)
46de2d:	eb 02                	jmp    0x46de31
46de2f:	dd d8                	fstp   %st(0)
46de31:	8b 45 08             	mov    0x8(%ebp),%eax
46de34:	83 f8 ff             	cmp    $0xffffffff,%eax
46de37:	74 06                	je     0x46de3f
46de39:	89 86 80 00 00 00    	mov    %eax,0x80(%esi)
46de3f:	8b 45 10             	mov    0x10(%ebp),%eax
46de42:	83 f8 ff             	cmp    $0xffffffff,%eax
46de45:	74 06                	je     0x46de4d
46de47:	89 86 84 00 00 00    	mov    %eax,0x84(%esi)
46de4d:	ff 75 0c             	push   0xc(%ebp)
46de50:	8d 4e 6c             	lea    0x6c(%esi),%ecx
46de53:	e8 95 90 f9 ff       	call   0x406eed
46de58:	8b 45 14             	mov    0x14(%ebp),%eax
46de5b:	89 86 88 00 00 00    	mov    %eax,0x88(%esi)
46de61:	33 c0                	xor    %eax,%eax
46de63:	40                   	inc    %eax
46de64:	5e                   	pop    %esi
46de65:	5d                   	pop    %ebp
46de66:	c2 1c 00             	ret    $0x1c
46de69:	55                   	push   %ebp
46de6a:	8b ec                	mov    %esp,%ebp
46de6c:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
46de70:	74 17                	je     0x46de89
46de72:	ff 75 10             	push   0x10(%ebp)
46de75:	b9 28 16 4c 00       	mov    $0x4c1628,%ecx
46de7a:	e8 cf d4 fa ff       	call   0x41b34e
46de7f:	8b c8                	mov    %eax,%ecx
46de81:	89 0d 94 16 4c 00    	mov    %ecx,0x4c1694
46de87:	eb 06                	jmp    0x46de8f
46de89:	8b 0d 94 16 4c 00    	mov    0x4c1694,%ecx
46de8f:	83 f9 ff             	cmp    $0xffffffff,%ecx
46de92:	75 07                	jne    0x46de9b
46de94:	33 c0                	xor    %eax,%eax
46de96:	e9 a3 00 00 00       	jmp    0x46df3e
46de9b:	a1 88 16 4c 00       	mov    0x4c1688,%eax
46dea0:	53                   	push   %ebx
46dea1:	8b 04 88             	mov    (%eax,%ecx,4),%eax
46dea4:	56                   	push   %esi
46dea5:	57                   	push   %edi
46dea6:	8b 38                	mov    (%eax),%edi
46dea8:	6a f0                	push   $0xfffffff0
46deaa:	8b 07                	mov    (%edi),%eax
46deac:	50                   	push   %eax
46dead:	89 45 10             	mov    %eax,0x10(%ebp)
46deb0:	ff 15 44 d6 48 00    	call   *0x48d644
46deb6:	8b 75 08             	mov    0x8(%ebp),%esi
46deb9:	8b d8                	mov    %eax,%ebx
46debb:	b8 00 00 c0 00       	mov    $0xc00000,%eax
46dec0:	23 d8                	and    %eax,%ebx
46dec2:	2b d8                	sub    %eax,%ebx
46dec4:	f7 db                	neg    %ebx
46dec6:	1b db                	sbb    %ebx,%ebx
46dec8:	43                   	inc    %ebx
46dec9:	83 fe ff             	cmp    $0xffffffff,%esi
46decc:	74 10                	je     0x46dede
46dece:	56                   	push   %esi
46decf:	6a f0                	push   $0xfffffff0
46ded1:	ff 75 10             	push   0x10(%ebp)
46ded4:	ff 15 f0 d4 48 00    	call   *0x48d4f0
46deda:	85 c0                	test   %eax,%eax
46dedc:	74 18                	je     0x46def6
46dede:	83 7d 0c ff          	cmpl   $0xffffffff,0xc(%ebp)
46dee2:	74 16                	je     0x46defa
46dee4:	ff 75 0c             	push   0xc(%ebp)
46dee7:	6a ec                	push   $0xffffffec
46dee9:	ff 75 10             	push   0x10(%ebp)
46deec:	ff 15 f0 d4 48 00    	call   *0x48d4f0
46def2:	85 c0                	test   %eax,%eax
46def4:	75 04                	jne    0x46defa
46def6:	33 c0                	xor    %eax,%eax
46def8:	eb 41                	jmp    0x46df3b
46defa:	80 7f 38 00          	cmpb   $0x0,0x38(%edi)
46defe:	74 38                	je     0x46df38
46df00:	b8 00 00 c0 00       	mov    $0xc00000,%eax
46df05:	23 f0                	and    %eax,%esi
46df07:	2b f0                	sub    %eax,%esi
46df09:	f7 de                	neg    %esi
46df0b:	1b f6                	sbb    %esi,%esi
46df0d:	46                   	inc    %esi
46df0e:	3b de                	cmp    %esi,%ebx
46df10:	74 14                	je     0x46df26
46df12:	6a 04                	push   $0x4
46df14:	ff 15 38 d5 48 00    	call   *0x48d538
46df1a:	85 f6                	test   %esi,%esi
46df1c:	74 05                	je     0x46df23
46df1e:	01 47 48             	add    %eax,0x48(%edi)
46df21:	eb 03                	jmp    0x46df26
46df23:	29 47 48             	sub    %eax,0x48(%edi)
46df26:	6a 47                	push   $0x47
46df28:	33 c0                	xor    %eax,%eax
46df2a:	50                   	push   %eax
46df2b:	50                   	push   %eax
46df2c:	50                   	push   %eax
46df2d:	50                   	push   %eax
46df2e:	50                   	push   %eax
46df2f:	ff 75 10             	push   0x10(%ebp)
46df32:	ff 15 b4 d4 48 00    	call   *0x48d4b4
46df38:	33 c0                	xor    %eax,%eax
46df3a:	40                   	inc    %eax