659a3a:	8b c6                	mov    %esi,%eax
659a3c:	e8 7f fd ff ff       	call   0x6597c0
659a41:	66 83 3f 42          	cmpw   $0x42,(%edi)
659a45:	74 15                	je     0x659a5c
659a47:	66 83 3f 6a          	cmpw   $0x6a,(%edi)
659a4b:	74 0f                	je     0x659a5c
659a4d:	a0 64 9d 65 00       	mov    0x659d64,%al
659a52:	3a c3                	cmp    %bl,%al
659a54:	75 0d                	jne    0x659a63
659a56:	66 83 3f 38          	cmpw   $0x38,(%edi)
659a5a:	75 07                	jne    0x659a63
659a5c:	8b c6                	mov    %esi,%eax
659a5e:	e8 f5 e6 ff ff       	call   0x658158
659a63:	66 83 3f 20          	cmpw   $0x20,(%edi)
659a67:	75 07                	jne    0x659a70
659a69:	8b c6                	mov    %esi,%eax
659a6b:	e8 e8 e6 ff ff       	call   0x658158
659a70:	66 83 3f 21          	cmpw   $0x21,(%edi)
659a74:	75 17                	jne    0x659a8d
659a76:	8b 86 f0 02 00 00    	mov    0x2f0(%esi),%eax
659a7c:	8b 90 98 03 00 00    	mov    0x398(%eax),%edx
659a82:	81 ea f4 01 00 00    	sub    $0x1f4,%edx
659a88:	e8 97 f1 f7 ff       	call   0x5d8c24
659a8d:	66 83 3f 22          	cmpw   $0x22,(%edi)
659a91:	75 17                	jne    0x659aaa
659a93:	8b 86 f0 02 00 00    	mov    0x2f0(%esi),%eax
659a99:	8b 90 98 03 00 00    	mov    0x398(%eax),%edx
659a9f:	81 c2 f4 01 00 00    	add    $0x1f4,%edx
659aa5:	e8 7a f1 f7 ff       	call   0x5d8c24
659aaa:	66 83 3f 26          	cmpw   $0x26,(%edi)
659aae:	75 14                	jne    0x659ac4
659ab0:	8b 86 f0 02 00 00    	mov    0x2f0(%esi),%eax
659ab6:	8b 90 98 03 00 00    	mov    0x398(%eax),%edx
659abc:	83 ea 3c             	sub    $0x3c,%edx
659abf:	e8 60 f1 f7 ff       	call   0x5d8c24
659ac4:	66 83 3f 28          	cmpw   $0x28,(%edi)
659ac8:	75 14                	jne    0x659ade
659aca:	8b 86 f0 02 00 00    	mov    0x2f0(%esi),%eax
659ad0:	8b 90 98 03 00 00    	mov    0x398(%eax),%edx
659ad6:	83 c2 3c             	add    $0x3c,%edx
659ad9:	e8 46 f1 f7 ff       	call   0x5d8c24
659ade:	66 83 3f 25          	cmpw   $0x25,(%edi)
659ae2:	75 14                	jne    0x659af8
659ae4:	8b 86 f0 02 00 00    	mov    0x2f0(%esi),%eax
659aea:	8b 90 94 03 00 00    	mov    0x394(%eax),%edx
659af0:	83 ea 3c             	sub    $0x3c,%edx
659af3:	e8 1c f0 f7 ff       	call   0x5d8b14
659af8:	66 83 3f 27          	cmpw   $0x27,(%edi)
659afc:	75 14                	jne    0x659b12
659afe:	8b 86 f0 02 00 00    	mov    0x2f0(%esi),%eax
659b04:	8b 90 94 03 00 00    	mov    0x394(%eax),%edx
659b0a:	83 c2 3c             	add    $0x3c,%edx
659b0d:	e8 02 f0 f7 ff       	call   0x5d8b14
659b12:	66 83 3f 7b          	cmpw   $0x7b,(%edi)
659b16:	0f 85 f4 00 00 00    	jne    0x659c10
659b1c:	8b 86 48 03 00 00    	mov    0x348(%esi),%eax
659b22:	89 45 f8             	mov    %eax,-0x8(%ebp)
659b25:	8b 86 4c 03 00 00    	mov    0x34c(%esi),%eax
659b2b:	89 45 fc             	mov    %eax,-0x4(%ebp)
659b2e:	a1 b0 6d 6a 00       	mov    0x6a6db0,%eax
659b33:	8b 00                	mov    (%eax),%eax
659b35:	8b 80 98 04 00 00    	mov    0x498(%eax),%eax
659b3b:	8a 80 70 01 00 00    	mov    0x170(%eax),%al
659b41:	88 45 f7             	mov    %al,-0x9(%ebp)
659b44:	a1 b0 6d 6a 00       	mov    0x6a6db0,%eax
659b49:	8b 00                	mov    (%eax),%eax
659b4b:	33 d2                	xor    %edx,%edx
659b4d:	e8 ae ab 02 00       	call   0x684700
659b52:	a1 b0 6d 6a 00       	mov    0x6a6db0,%eax
659b57:	8b 00                	mov    (%eax),%eax
659b59:	8b 80 98 04 00 00    	mov    0x498(%eax),%eax
659b5f:	8b 80 6c 01 00 00    	mov    0x16c(%eax),%eax
659b65:	83 e8 01             	sub    $0x1,%eax
659b68:	72 0a                	jb     0x659b74
659b6a:	74 1c                	je     0x659b88
659b6c:	48                   	dec    %eax
659b6d:	74 2d                	je     0x659b9c
659b6f:	48                   	dec    %eax
659b70:	74 3e                	je     0x659bb0
659b72:	eb 50                	jmp    0x659bc4
659b74:	33 c0                	xor    %eax,%eax
659b76:	89 86 48 03 00 00    	mov    %eax,0x348(%esi)
659b7c:	c7 86 4c 03 00 00 00 	movl   $0x3ff80000,0x34c(%esi)
659b83:	00 f8 3f
659b86:	eb 4e                	jmp    0x659bd6
659b88:	33 c0                	xor    %eax,%eax
659b8a:	89 86 48 03 00 00    	mov    %eax,0x348(%esi)
659b90:	c7 86 4c 03 00 00 00 	movl   $0x40000000,0x34c(%esi)
659b97:	00 00 40
659b9a:	eb 3a                	jmp    0x659bd6
659b9c:	33 c0                	xor    %eax,%eax
659b9e:	89 86 48 03 00 00    	mov    %eax,0x348(%esi)
659ba4:	c7 86 4c 03 00 00 00 	movl   $0x40040000,0x34c(%esi)
659bab:	00 04 40
659bae:	eb 26                	jmp    0x659bd6
659bb0:	33 c0                	xor    %eax,%eax
659bb2:	89 86 48 03 00 00    	mov    %eax,0x348(%esi)
659bb8:	c7 86 4c 03 00 00 00 	movl   $0x40080000,0x34c(%esi)
659bbf:	00 08 40
659bc2:	eb 12                	jmp    0x659bd6
659bc4:	33 c0                	xor    %eax,%eax
659bc6:	89 86 48 03 00 00    	mov    %eax,0x348(%esi)
659bcc:	c7 86 4c 03 00 00 00 	movl   $0x40000000,0x34c(%esi)
659bd3:	00 00 40
659bd6:	8b c6                	mov    %esi,%eax
659bd8:	e8 cf 1e 00 00       	call   0x65baac
659bdd:	89 86 58 03 00 00    	mov    %eax,0x358(%esi)
659be3:	dd 45 f8             	fldl   -0x8(%ebp)
659be6:	dc 9e 48 03 00 00    	fcompl 0x348(%esi)
659bec:	df e0                	fnstsw %ax
659bee:	9e                   	sahf
659bef:	75 18                	jne    0x659c09
659bf1:	a1 b0 6d 6a 00       	mov    0x6a6db0,%eax
659bf6:	8b 00                	mov    (%eax),%eax
659bf8:	8b 80 98 04 00 00    	mov    0x498(%eax),%eax
659bfe:	8a 80 70 01 00 00    	mov    0x170(%eax),%al
659c04:	3a 45 f7             	cmp    -0x9(%ebp),%al
659c07:	74 07                	je     0x659c10
659c09:	c6 86 70 03 00 00 00 	movb   $0x0,0x370(%esi)
659c10:	66 83 3f 11          	cmpw   $0x11,(%edi)
659c14:	75 37                	jne    0x659c4d
659c16:	8b 86 f0 02 00 00    	mov    0x2f0(%esi),%eax
659c1c:	e8 87 55 f8 ff       	call   0x5df1a8
659c21:	66 8b 15 68 9d 65 00 	mov    0x659d68,%dx
659c28:	66 3b d0             	cmp    %ax,%dx
659c2b:	74 20                	je     0x659c4d
659c2d:	8b 86 f0 02 00 00    	mov    0x2f0(%esi),%eax
659c33:	66 8b 15 68 9d 65 00 	mov    0x659d68,%dx
659c3a:	8b 08                	mov    (%eax),%ecx
659c3c:	ff 91 04 01 00 00    	call   *0x104(%ecx)
659c42:	66 ba f4 06          	mov    $0x6f4,%dx
659c46:	8b c6                	mov    %esi,%eax
659c48:	e8 ef e6 ff ff       	call   0x65833c
659c4d:	a0 6c 9d 65 00       	mov    0x659d6c,%al
659c52:	3a c3                	cmp    %bl,%al
659c54:	0f 85 eb 00 00 00    	jne    0x659d45
659c5a:	66 83 3f 31          	cmpw   $0x31,(%edi)
659c5e:	74 06                	je     0x659c66
659c60:	66 83 3f 61          	cmpw   $0x61,(%edi)
659c64:	75 0c                	jne    0x659c72
659c66:	ba 64 00 00 00       	mov    $0x64,%edx
659c6b:	8b c6                	mov    %esi,%eax
659c6d:	e8 9a 01 00 00       	call   0x659e0c
659c72:	66 83 3f 32          	cmpw   $0x32,(%edi)
659c76:	74 06                	je     0x659c7e
659c78:	66 83 3f 62          	cmpw   $0x62,(%edi)
659c7c:	75 0c                	jne    0x659c8a
659c7e:	ba c8 00 00 00       	mov    $0xc8,%edx
659c83:	8b c6                	mov    %esi,%eax
659c85:	e8 82 01 00 00       	call   0x659e0c
659c8a:	66 83 3f 33          	cmpw   $0x33,(%edi)
659c8e:	74 06                	je     0x659c96
659c90:	66 83 3f 63          	cmpw   $0x63,(%edi)
659c94:	75 0c                	jne    0x659ca2
659c96:	ba 2c 01 00 00       	mov    $0x12c,%edx
659c9b:	8b c6                	mov    %esi,%eax
659c9d:	e8 6a 01 00 00       	call   0x659e0c
659ca2:	66 83 3f 34          	cmpw   $0x34,(%edi)
659ca6:	74 06                	je     0x659cae
659ca8:	66 83 3f 64          	cmpw   $0x64,(%edi)
659cac:	75 0c                	jne    0x659cba
659cae:	ba 90 01 00 00       	mov    $0x190,%edx
659cb3:	8b c6                	mov    %esi,%eax
659cb5:	e8 52 01 00 00       	call   0x659e0c
659cba:	66 83 3f 35          	cmpw   $0x35,(%edi)
659cbe:	74 06                	je     0x659cc6
659cc0:	66 83 3f 65          	cmpw   $0x65,(%edi)
659cc4:	75 0c                	jne    0x659cd2
659cc6:	ba f4 01 00 00       	mov    $0x1f4,%edx
659ccb:	8b c6                	mov    %esi,%eax
659ccd:	e8 3a 01 00 00       	call   0x659e0c
659cd2:	66 83 3f 36          	cmpw   $0x36,(%edi)
659cd6:	74 06                	je     0x659cde
659cd8:	66 83 3f 66          	cmpw   $0x66,(%edi)
659cdc:	75 0c                	jne    0x659cea
659cde:	ba 58 02 00 00       	mov    $0x258,%edx
659ce3:	8b c6                	mov    %esi,%eax
659ce5:	e8 22 01 00 00       	call   0x659e0c
659cea:	66 83 3f 37          	cmpw   $0x37,(%edi)
659cee:	74 06                	je     0x659cf6
659cf0:	66 83 3f 67          	cmpw   $0x67,(%edi)
659cf4:	75 0c                	jne    0x659d02
659cf6:	ba bc 02 00 00       	mov    $0x2bc,%edx
659cfb:	8b c6                	mov    %esi,%eax
659cfd:	e8 0a 01 00 00       	call   0x659e0c
659d02:	66 83 3f 38          	cmpw   $0x38,(%edi)
659d06:	74 06                	je     0x659d0e
659d08:	66 83 3f 68          	cmpw   $0x68,(%edi)
659d0c:	75 0c                	jne    0x659d1a
659d0e:	ba 20 03 00 00       	mov    $0x320,%edx
659d13:	8b c6                	mov    %esi,%eax
659d15:	e8 f2 00 00 00       	call   0x659e0c
659d1a:	66 83 3f 39          	cmpw   $0x39,(%edi)
659d1e:	74 06                	je     0x659d26
659d20:	66 83 3f 69          	cmpw   $0x69,(%edi)
659d24:	75 0c                	jne    0x659d32
659d26:	ba 84 03 00 00       	mov    $0x384,%edx
659d2b:	8b c6                	mov    %esi,%eax
659d2d:	e8 da 00 00 00       	call   0x659e0c
659d32:	66 83 3f 30          	cmpw   $0x30,(%edi)
659d36:	74 06                	je     0x659d3e
659d38:	66 83 3f 60          	cmpw   $0x60,(%edi)
659d3c:	75 07                	jne    0x659d45
659d3e:	8b c6                	mov    %esi,%eax
659d40:	e8 13 e4 ff ff       	call   0x658158
659d45:	33 c0                	xor    %eax,%eax
659d47:	5a                   	pop    %edx
659d48:	59                   	pop    %ecx
659d49:	59                   	pop    %ecx
659d4a:	64 89 10             	mov    %edx,%fs:(%eax)
659d4d:	eb 0a                	jmp    0x659d59
659d4f:	e9 04 a2 da ff       	jmp    0x403f58
659d54:	e8 67 a5 da ff       	call   0x4042c0
659d59:	5f                   	pop    %edi
659d5a:	5e                   	pop    %esi
659d5b:	5b                   	pop    %ebx
659d5c:	8b e5                	mov    %ebp,%esp
659d5e:	5d                   	pop    %ebp
659d5f:	c2 04 00             	ret    $0x4
659d62:	00 00                	add    %al,(%eax)
659d64:	01 00                	add    %eax,(%eax)
659d66:	00 00                	add    %al,(%eax)
659d68:	20 00                	and    %al,(%eax)
659d6a:	00 00                	add    %al,(%eax)
659d6c:	00 00                	add    %al,(%eax)
659d6e:	00 00                	add    %al,(%eax)
659d70:	55                   	push   %ebp
659d71:	8b ec                	mov    %esp,%ebp
659d73:	53                   	push   %ebx
659d74:	56                   	push   %esi
659d75:	57                   	push   %edi
659d76:	8b d8                	mov    %eax,%ebx
659d78:	33 c0                	xor    %eax,%eax
659d7a:	55                   	push   %ebp
659d7b:	68 f5 9d 65 00       	push   $0x659df5
659d80:	64 ff 30             	push   %fs:(%eax)
659d83:	64 89 20             	mov    %esp,%fs:(%eax)
659d86:	8b 83 f4 02 00 00    	mov    0x2f4(%ebx),%eax
659d8c:	80 78 57 00          	cmpb   $0x0,0x57(%eax)
659d90:	74 0c                	je     0x659d9e
659d92:	64 8f 05 00 00 00 00 	pop    %fs:0x0
659d99:	83 c4 08             	add    $0x8,%esp
659d9c:	eb 61                	jmp    0x659dff
659d9e:	66 83 39 11          	cmpw   $0x11,(%ecx)
659da2:	75 47                	jne    0x659deb
659da4:	8b 83 f0 02 00 00    	mov    0x2f0(%ebx),%eax
659daa:	66 8b 15 08 9e 65 00 	mov    0x659e08,%dx
659db1:	8b 08                	mov    (%eax),%ecx
659db3:	ff 91 04 01 00 00    	call   *0x104(%ecx)
659db9:	8b b3 f0 02 00 00    	mov    0x2f0(%ebx),%esi
659dbf:	8b d6                	mov    %esi,%edx
659dc1:	8b c3                	mov    %ebx,%eax
659dc3:	e8 ec e2 ff ff       	call   0x6580b4
659dc8:	dc 9e a0 03 00 00    	fcompl 0x3a0(%esi)
659dce:	df e0                	fnstsw %ax
659dd0:	9e                   	sahf
659dd1:	72 0d                	jb     0x659de0
659dd3:	66 ba ca 04          	mov    $0x4ca,%dx
659dd7:	8b c3                	mov    %ebx,%eax
659dd9:	e8 5e e5 ff ff       	call   0x65833c
659dde:	eb 0b                	jmp    0x659deb
659de0:	66 ba c9 04          	mov    $0x4c9,%dx
659de4:	8b c3                	mov    %ebx,%eax
659de6:	e8 51 e5 ff ff       	call   0x65833c
659deb:	33 c0                	xor    %eax,%eax
659ded:	5a                   	pop    %edx
659dee:	59                   	pop    %ecx
659def:	59                   	pop    %ecx
659df0:	64 89 10             	mov    %edx,%fs:(%eax)
659df3:	eb 0a                	jmp    0x659dff
659df5:	e9 5e a1 da ff       	jmp    0x403f58
659dfa:	e8 c1 a4 da ff       	call   0x4042c0
659dff:	5f                   	pop    %edi
659e00:	5e                   	pop    %esi
659e01:	5b                   	pop    %ebx
659e02:	5d                   	pop    %ebp
659e03:	c2 04 00             	ret    $0x4
659e06:	00 00                	add    %al,(%eax)
659e08:	00 00                	add    %al,(%eax)
659e0a:	00 00                	add    %al,(%eax)
659e0c:	55                   	push   %ebp
659e0d:	8b ec                	mov    %esp,%ebp
659e0f:	83 c4 f4             	add    $0xfffffff4,%esp
659e12:	53                   	push   %ebx
659e13:	56                   	push   %esi
659e14:	57                   	push   %edi
659e15:	8b fa                	mov    %edx,%edi
659e17:	8b d8                	mov    %eax,%ebx
659e19:	33 c0                	xor    %eax,%eax
659e1b:	55                   	push   %ebp
659e1c:	68 a8 9e 65 00       	push   $0x659ea8
659e21:	64 ff 30             	push   %fs:(%eax)
659e24:	64 89 20             	mov    %esp,%fs:(%eax)
659e27:	8b 83 f0 02 00 00    	mov    0x2f0(%ebx),%eax
659e2d:	8b 10                	mov    (%eax),%edx
659e2f:	ff 92 e0 00 00 00    	call   *0xe0(%edx)
659e35:	89 7d fc             	mov    %edi,-0x4(%ebp)
659e38:	db 45 fc             	fildl  -0x4(%ebp)
659e3b:	8b b3 f0 02 00 00    	mov    0x2f0(%ebx),%esi
659e41:	dc 9e a0 03 00 00    	fcompl 0x3a0(%esi)
659e47:	df e0                	fnstsw %ax
659e49:	9e                   	sahf
659e4a:	74 44                	je     0x659e90
659e4c:	89 7d fc             	mov    %edi,-0x4(%ebp)
659e4f:	db 45 fc             	fildl  -0x4(%ebp)
659e52:	83 c4 f8             	add    $0xfffffff8,%esp
659e55:	dd 1c 24             	fstpl  (%esp)
659e58:	9b                   	fwait
659e59:	6a 01                	push   $0x1
659e5b:	8b 46 4c             	mov    0x4c(%esi),%eax
659e5e:	d1 f8                	sar    $1,%eax
659e60:	79 03                	jns    0x659e65
659e62:	83 d0 00             	adc    $0x0,%eax
659e65:	89 45 f8             	mov    %eax,-0x8(%ebp)
659e68:	db 45 f8             	fildl  -0x8(%ebp)
659e6b:	e8 50 8e da ff       	call   0x402cc0
659e70:	50                   	push   %eax
659e71:	8b 46 48             	mov    0x48(%esi),%eax
659e74:	d1 f8                	sar    $1,%eax
659e76:	79 03                	jns    0x659e7b
659e78:	83 d0 00             	adc    $0x0,%eax
659e7b:	89 45 f4             	mov    %eax,-0xc(%ebp)
659e7e:	db 45 f4             	fildl  -0xc(%ebp)
659e81:	e8 3a 8e da ff       	call   0x402cc0
659e86:	8b d0                	mov    %eax,%edx
659e88:	8b c6                	mov    %esi,%eax
659e8a:	59                   	pop    %ecx
659e8b:	e8 d4 f8 f7 ff       	call   0x5d9764
659e90:	8b 83 f0 02 00 00    	mov    0x2f0(%ebx),%eax
659e96:	8b 10                	mov    (%eax),%edx
659e98:	ff 92 e4 00 00 00    	call   *0xe4(%edx)
659e9e:	33 c0                	xor    %eax,%eax
659ea0:	5a                   	pop    %edx
659ea1:	59                   	pop    %ecx
659ea2:	59                   	pop    %ecx
659ea3:	64 89 10             	mov    %edx,%fs:(%eax)
659ea6:	eb 0a                	jmp    0x659eb2
659ea8:	e9 ab a0 da ff       	jmp    0x403f58
659ead:	e8 0e a4 da ff       	call   0x4042c0
659eb2:	5f                   	pop    %edi
659eb3:	5e                   	pop    %esi
659eb4:	5b                   	pop    %ebx
659eb5:	8b e5                	mov    %ebp,%esp
659eb7:	5d                   	pop    %ebp
659eb8:	c3                   	ret
659eb9:	8d 40 00             	lea    0x0(%eax),%eax
659ebc:	53                   	push   %ebx
659ebd:	8b d8                	mov    %eax,%ebx
659ebf:	8b 83 fc 02 00 00    	mov    0x2fc(%ebx),%eax
659ec5:	8b 53 48             	mov    0x48(%ebx),%edx