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
46df3b:	5f                   	pop    %edi
46df3c:	5e                   	pop    %esi
46df3d:	5b                   	pop    %ebx
46df3e:	5d                   	pop    %ebp
46df3f:	c2 0c 00             	ret    $0xc
46df42:	55                   	push   %ebp
46df43:	8b ec                	mov    %esp,%ebp
46df45:	51                   	push   %ecx
46df46:	8b 0d 94 16 4c 00    	mov    0x4c1694,%ecx
46df4c:	56                   	push   %esi
46df4d:	57                   	push   %edi
46df4e:	83 f9 ff             	cmp    $0xffffffff,%ecx
46df51:	74 0e                	je     0x46df61
46df53:	a1 88 16 4c 00       	mov    0x4c1688,%eax
46df58:	8b 04 88             	mov    (%eax,%ecx,4),%eax
46df5b:	8b 00                	mov    (%eax),%eax
46df5d:	8b 30                	mov    (%eax),%esi
46df5f:	eb 02                	jmp    0x46df63
46df61:	33 f6                	xor    %esi,%esi
46df63:	ff 75 08             	push   0x8(%ebp)
46df66:	bf 28 16 4c 00       	mov    $0x4c1628,%edi
46df6b:	8b cf                	mov    %edi,%ecx
46df6d:	e8 dc d3 fa ff       	call   0x41b34e
46df72:	89 45 08             	mov    %eax,0x8(%ebp)
46df75:	83 f8 ff             	cmp    $0xffffffff,%eax
46df78:	75 04                	jne    0x46df7e
46df7a:	33 c0                	xor    %eax,%eax
46df7c:	eb 5a                	jmp    0x46dfd8
46df7e:	83 7d 0c ff          	cmpl   $0xffffffff,0xc(%ebp)
46df82:	a3 94 16 4c 00       	mov    %eax,0x4c1694
46df87:	74 4d                	je     0x46dfd6
46df89:	8d 45 fc             	lea    -0x4(%ebp),%eax
46df8c:	50                   	push   %eax
46df8d:	8d 45 08             	lea    0x8(%ebp),%eax
46df90:	50                   	push   %eax
46df91:	ff 75 0c             	push   0xc(%ebp)
46df94:	8b cf                	mov    %edi,%ecx
46df96:	e8 63 f4 f9 ff       	call   0x40d3fe
46df9b:	84 c0                	test   %al,%al
46df9d:	74 db                	je     0x46df7a
46df9f:	8b 4d 08             	mov    0x8(%ebp),%ecx
46dfa2:	a1 88 16 4c 00       	mov    0x4c1688,%eax
46dfa7:	8b 04 88             	mov    (%eax,%ecx,4),%eax
46dfaa:	8b 4d fc             	mov    -0x4(%ebp),%ecx
46dfad:	8b 10                	mov    (%eax),%edx
46dfaf:	a1 9c 16 4c 00       	mov    0x4c169c,%eax
46dfb4:	8b 04 88             	mov    (%eax,%ecx,4),%eax
46dfb7:	8b 00                	mov    (%eax),%eax
46dfb9:	80 b8 90 00 00 00 0b 	cmpb   $0xb,0x90(%eax)
46dfc0:	75 b8                	jne    0x46df7a
46dfc2:	c6 82 98 01 00 00 01 	movb   $0x1,0x198(%edx)
46dfc9:	0f b6 88 93 00 00 00 	movzbl 0x93(%eax),%ecx
46dfd0:	89 8a 90 01 00 00    	mov    %ecx,0x190(%edx)
46dfd6:	8b c6                	mov    %esi,%eax
46dfd8:	5f                   	pop    %edi
46dfd9:	5e                   	pop    %esi
46dfda:	c9                   	leave
46dfdb:	c2 08 00             	ret    $0x8
46dfde:	55                   	push   %ebp
46dfdf:	8b ec                	mov    %esp,%ebp
46dfe1:	83 ec 20             	sub    $0x20,%esp
46dfe4:	57                   	push   %edi
46dfe5:	8b 7d 08             	mov    0x8(%ebp),%edi
46dfe8:	80 7f 39 00          	cmpb   $0x0,0x39(%edi)
46dfec:	75 66                	jne    0x46e054
46dfee:	8d 45 e4             	lea    -0x1c(%ebp),%eax
46dff1:	50                   	push   %eax
46dff2:	8b 45 0c             	mov    0xc(%ebp),%eax
46dff5:	ff 30                	push   (%eax)
46dff7:	ff 15 7c d6 48 00    	call   *0x48d67c
46dffd:	8b 45 e4             	mov    -0x1c(%ebp),%eax
46e000:	89 45 f4             	mov    %eax,-0xc(%ebp)
46e003:	8b 45 e8             	mov    -0x18(%ebp),%eax
46e006:	89 45 f8             	mov    %eax,-0x8(%ebp)
46e009:	8d 45 f4             	lea    -0xc(%ebp),%eax
46e00c:	50                   	push   %eax
46e00d:	ff 37                	push   (%edi)
46e00f:	ff 15 54 d6 48 00    	call   *0x48d654
46e015:	8b 45 f4             	mov    -0xc(%ebp),%eax
46e018:	89 45 e4             	mov    %eax,-0x1c(%ebp)
46e01b:	8b 45 f8             	mov    -0x8(%ebp),%eax
46e01e:	89 45 e8             	mov    %eax,-0x18(%ebp)
46e021:	8b 45 ec             	mov    -0x14(%ebp),%eax
46e024:	89 45 f4             	mov    %eax,-0xc(%ebp)
46e027:	8b 45 f0             	mov    -0x10(%ebp),%eax
46e02a:	89 45 f8             	mov    %eax,-0x8(%ebp)
46e02d:	8d 45 f4             	lea    -0xc(%ebp),%eax
46e030:	50                   	push   %eax
46e031:	ff 37                	push   (%edi)
46e033:	ff 15 54 d6 48 00    	call   *0x48d654
46e039:	8b 45 f4             	mov    -0xc(%ebp),%eax
46e03c:	ff 75 10             	push   0x10(%ebp)
46e03f:	89 45 ec             	mov    %eax,-0x14(%ebp)
46e042:	8b 45 f8             	mov    -0x8(%ebp),%eax
46e045:	89 45 f0             	mov    %eax,-0x10(%ebp)
46e048:	8d 45 e4             	lea    -0x1c(%ebp),%eax
46e04b:	50                   	push   %eax
46e04c:	ff 37                	push   (%edi)
46e04e:	ff 15 40 d6 48 00    	call   *0x48d640
46e054:	5f                   	pop    %edi
46e055:	c9                   	leave
46e056:	c2 0c 00             	ret    $0xc
46e059:	55                   	push   %ebp
46e05a:	8b ec                	mov    %esp,%ebp
46e05c:	5d                   	pop    %ebp
46e05d:	e9 71 5a fe ff       	jmp    0x453ad3
46e062:	55                   	push   %ebp
46e063:	8b ec                	mov    %esp,%ebp
46e065:	83 ec 10             	sub    $0x10,%esp
46e068:	8d 45 f0             	lea    -0x10(%ebp),%eax
46e06b:	53                   	push   %ebx
46e06c:	8b 5d 08             	mov    0x8(%ebp),%ebx
46e06f:	50                   	push   %eax
46e070:	8d 45 f4             	lea    -0xc(%ebp),%eax
46e073:	50                   	push   %eax
46e074:	53                   	push   %ebx
46e075:	b9 28 16 4c 00       	mov    $0x4c1628,%ecx
46e07a:	e8 7f f3 f9 ff       	call   0x40d3fe
46e07f:	84 c0                	test   %al,%al
46e081:	0f 84 58 01 00 00    	je     0x46e1df
46e087:	8b 4d f4             	mov    -0xc(%ebp),%ecx
46e08a:	a1 88 16 4c 00       	mov    0x4c1688,%eax
46e08f:	8b 55 f0             	mov    -0x10(%ebp),%edx
46e092:	8b 04 88             	mov    (%eax,%ecx,4),%eax
46e095:	56                   	push   %esi
46e096:	8b 30                	mov    (%eax),%esi
46e098:	a1 9c 16 4c 00       	mov    0x4c169c,%eax
46e09d:	57                   	push   %edi
46e09e:	8b 04 90             	mov    (%eax,%edx,4),%eax
46e0a1:	8b 7d 0c             	mov    0xc(%ebp),%edi
46e0a4:	8b 00                	mov    (%eax),%eax
46e0a6:	89 45 f8             	mov    %eax,-0x8(%ebp)
46e0a9:	8a 88 90 00 00 00    	mov    0x90(%eax),%cl
46e0af:	88 4d ff             	mov    %cl,-0x1(%ebp)
46e0b2:	83 ff 06             	cmp    $0x6,%edi
46e0b5:	75 05                	jne    0x46e0bc
46e0b7:	80 f9 18             	cmp    $0x18,%cl
46e0ba:	74 25                	je     0x46e0e1
46e0bc:	83 ff 04             	cmp    $0x4,%edi
46e0bf:	75 05                	jne    0x46e0c6
46e0c1:	80 f9 01             	cmp    $0x1,%cl
46e0c4:	74 1b                	je     0x46e0e1
46e0c6:	83 ff 03             	cmp    $0x3,%edi
46e0c9:	75 04                	jne    0x46e0cf
46e0cb:	84 c9                	test   %cl,%cl
46e0cd:	74 12                	je     0x46e0e1
46e0cf:	81 ff 00 01 00 00    	cmp    $0x100,%edi
46e0d5:	75 20                	jne    0x46e0f7
46e0d7:	80 f9 02             	cmp    $0x2,%cl
46e0da:	74 05                	je     0x46e0e1
46e0dc:	80 f9 03             	cmp    $0x3,%cl
46e0df:	75 16                	jne    0x46e0f7
46e0e1:	8b 8e cc 01 00 00    	mov    0x1cc(%esi),%ecx
46e0e7:	89 56 1c             	mov    %edx,0x1c(%esi)
46e0ea:	85 c9                	test   %ecx,%ecx
46e0ec:	74 09                	je     0x46e0f7
46e0ee:	50                   	push   %eax
46e0ef:	e8 08 04 fd ff       	call   0x43e4fc
46e0f4:	8b 55 f0             	mov    -0x10(%ebp),%edx
46e0f7:	80 7e 38 00          	cmpb   $0x0,0x38(%esi)
46e0fb:	74 1f                	je     0x46e11c
46e0fd:	a1 9c 16 4c 00       	mov    0x4c169c,%eax
46e102:	8b 04 90             	mov    (%eax,%edx,4),%eax
46e105:	8b 00                	mov    (%eax),%eax
46e107:	8a 80 93 00 00 00    	mov    0x93(%eax),%al
46e10d:	3c ff                	cmp    $0xff,%al
46e10f:	74 12                	je     0x46e123
46e111:	0f b6 c0             	movzbl %al,%eax
46e114:	3b 86 90 01 00 00    	cmp    0x190(%esi),%eax
46e11a:	74 07                	je     0x46e123
46e11c:	32 c0                	xor    %al,%al
46e11e:	e9 ba 00 00 00       	jmp    0x46e1dd
46e123:	6a 00                	push   $0x0
46e125:	56                   	push   %esi
46e126:	b9 28 16 4c 00       	mov    $0x4c1628,%ecx