46ec95:	81 c3 34 01 00 00    	add    $0x134,%ebx
46ec9b:	89 5d f8             	mov    %ebx,-0x8(%ebp)
46ec9e:	8b 5d f8             	mov    -0x8(%ebp),%ebx
46eca1:	8b 03                	mov    (%ebx),%eax
46eca3:	39 45 0c             	cmp    %eax,0xc(%ebp)
46eca6:	0f 8c 62 00 00 00    	jl     0x46ed0e
46ecac:	8b 5d 08             	mov    0x8(%ebp),%ebx
46ecaf:	8b 1b                	mov    (%ebx),%ebx
46ecb1:	81 c3 34 01 00 00    	add    $0x134,%ebx
46ecb7:	89 5d f0             	mov    %ebx,-0x10(%ebp)
46ecba:	8b 5d 08             	mov    0x8(%ebp),%ebx
46ecbd:	8b 1b                	mov    (%ebx),%ebx
46ecbf:	81 c3 60 01 00 00    	add    $0x160,%ebx
46ecc5:	89 5d ec             	mov    %ebx,-0x14(%ebp)
46ecc8:	8b 5d f0             	mov    -0x10(%ebp),%ebx
46eccb:	db 03                	fildl  (%ebx)
46eccd:	dd 5d e4             	fstpl  -0x1c(%ebp)
46ecd0:	dd 45 e4             	fldl   -0x1c(%ebp)
46ecd3:	8b 5d ec             	mov    -0x14(%ebp),%ebx
46ecd6:	db 03                	fildl  (%ebx)
46ecd8:	dd 5d dc             	fstpl  -0x24(%ebp)
46ecdb:	dc 45 dc             	faddl  -0x24(%ebp)
46ecde:	dd 5d d4             	fstpl  -0x2c(%ebp)
46ece1:	dd 45 d4             	fldl   -0x2c(%ebp)
46ece4:	dc 25 9a bb 4c 00    	fsubl  0x4cbb9a
46ecea:	dd 5d cc             	fstpl  -0x34(%ebp)
46eced:	db 45 0c             	fildl  0xc(%ebp)
46ecf0:	dd 5d c4             	fstpl  -0x3c(%ebp)
46ecf3:	dd 45 c4             	fldl   -0x3c(%ebp)
46ecf6:	dc 65 cc             	fsubl  -0x34(%ebp)
46ecf9:	dc 1d 7a 0a 4e 00    	fcompl 0x4e0a7a
46ecff:	df e0                	fnstsw %ax
46ed01:	f6 c4 41             	test   $0x41,%ah
46ed04:	0f 84 04 00 00 00    	je     0x46ed0e
46ed0a:	33 c0                	xor    %eax,%eax
46ed0c:	eb 05                	jmp    0x46ed13
46ed0e:	b8 01 00 00 00       	mov    $0x1,%eax
46ed13:	85 c0                	test   %eax,%eax
46ed15:	0f 84 93 01 00 00    	je     0x46eeae
46ed1b:	8b 5d 08             	mov    0x8(%ebp),%ebx
46ed1e:	8b 1b                	mov    (%ebx),%ebx
46ed20:	81 c3 28 01 00 00    	add    $0x128,%ebx
46ed26:	89 5d f8             	mov    %ebx,-0x8(%ebp)
46ed29:	8b 5d f8             	mov    -0x8(%ebp),%ebx
46ed2c:	83 3b 00             	cmpl   $0x0,(%ebx)
46ed2f:	0f 85 51 00 00 00    	jne    0x46ed86
46ed35:	8b 5d 08             	mov    0x8(%ebp),%ebx
46ed38:	8b 1b                	mov    (%ebx),%ebx
46ed3a:	81 c3 4c 01 00 00    	add    $0x14c,%ebx
46ed40:	89 5d f8             	mov    %ebx,-0x8(%ebp)
46ed43:	db 45 0c             	fildl  0xc(%ebp)
46ed46:	dd 5d f0             	fstpl  -0x10(%ebp)
46ed49:	dd 45 f0             	fldl   -0x10(%ebp)
46ed4c:	8b 5d f8             	mov    -0x8(%ebp),%ebx
46ed4f:	db 03                	fildl  (%ebx)
46ed51:	dd 5d e8             	fstpl  -0x18(%ebp)
46ed54:	dc 4d e8             	fmull  -0x18(%ebp)
46ed57:	dd 5d e0             	fstpl  -0x20(%ebp)
46ed5a:	8b 5d 08             	mov    0x8(%ebp),%ebx
46ed5d:	8b 1b                	mov    (%ebx),%ebx
46ed5f:	8b 9b 64 01 00 00    	mov    0x164(%ebx),%ebx
46ed65:	83 c3 0c             	add    $0xc,%ebx
46ed68:	89 5d dc             	mov    %ebx,-0x24(%ebp)
46ed6b:	dd 45 e0             	fldl   -0x20(%ebp)
46ed6e:	8b 5d dc             	mov    -0x24(%ebp),%ebx
46ed71:	d8 23                	fsubs  (%ebx)
46ed73:	dd 5d d4             	fstpl  -0x2c(%ebp)
46ed76:	dd 45 d4             	fldl   -0x2c(%ebp)
46ed79:	e8 71 24 f9 ff       	call   0x4011ef
46ed7e:	89 45 fc             	mov    %eax,-0x4(%ebp)
46ed81:	e9 00 00 00 00       	jmp    0x46ed86
46ed86:	8b 5d 08             	mov    0x8(%ebp),%ebx
46ed89:	8b 1b                	mov    (%ebx),%ebx
46ed8b:	81 c3 5c 01 00 00    	add    $0x15c,%ebx
46ed91:	89 5d f8             	mov    %ebx,-0x8(%ebp)
46ed94:	8b 5d 08             	mov    0x8(%ebp),%ebx
46ed97:	8b 1b                	mov    (%ebx),%ebx
46ed99:	8b 9b 64 01 00 00    	mov    0x164(%ebx),%ebx
46ed9f:	83 c3 0c             	add    $0xc,%ebx
46eda2:	89 5d f4             	mov    %ebx,-0xc(%ebp)
46eda5:	8b 5d f8             	mov    -0x8(%ebp),%ebx
46eda8:	db 03                	fildl  (%ebx)
46edaa:	dd 5d ec             	fstpl  -0x14(%ebp)
46edad:	dd 45 ec             	fldl   -0x14(%ebp)
46edb0:	8b 5d f4             	mov    -0xc(%ebp),%ebx
46edb3:	d8 23                	fsubs  (%ebx)
46edb5:	dd 5d e4             	fstpl  -0x1c(%ebp)
46edb8:	db 45 fc             	fildl  -0x4(%ebp)
46edbb:	dd 5d dc             	fstpl  -0x24(%ebp)
46edbe:	dd 45 dc             	fldl   -0x24(%ebp)
46edc1:	dc 65 e4             	fsubl  -0x1c(%ebp)
46edc4:	dc 1d 7a 0a 4e 00    	fcompl 0x4e0a7a
46edca:	df e0                	fnstsw %ax
46edcc:	f6 c4 41             	test   $0x41,%ah
46edcf:	0f 85 3d 00 00 00    	jne    0x46ee12
46edd5:	8b 5d 08             	mov    0x8(%ebp),%ebx
46edd8:	8b 1b                	mov    (%ebx),%ebx
46edda:	81 c3 5c 01 00 00    	add    $0x15c,%ebx
46ede0:	89 5d f8             	mov    %ebx,-0x8(%ebp)
46ede3:	8b 5d 08             	mov    0x8(%ebp),%ebx
46ede6:	8b 1b                	mov    (%ebx),%ebx
46ede8:	8b 9b 64 01 00 00    	mov    0x164(%ebx),%ebx
46edee:	83 c3 0c             	add    $0xc,%ebx
46edf1:	89 5d f4             	mov    %ebx,-0xc(%ebp)
46edf4:	8b 5d f8             	mov    -0x8(%ebp),%ebx
46edf7:	db 03                	fildl  (%ebx)
46edf9:	dd 5d ec             	fstpl  -0x14(%ebp)
46edfc:	dd 45 ec             	fldl   -0x14(%ebp)
46edff:	8b 5d f4             	mov    -0xc(%ebp),%ebx
46ee02:	d8 23                	fsubs  (%ebx)
46ee04:	dd 5d e4             	fstpl  -0x1c(%ebp)
46ee07:	dd 45 e4             	fldl   -0x1c(%ebp)
46ee0a:	e8 e0 23 f9 ff       	call   0x4011ef
46ee0f:	89 45 fc             	mov    %eax,-0x4(%ebp)
46ee12:	8b 5d 08             	mov    0x8(%ebp),%ebx
46ee15:	8b 1b                	mov    (%ebx),%ebx
46ee17:	81 c3 78 01 00 00    	add    $0x178,%ebx
46ee1d:	89 5d f8             	mov    %ebx,-0x8(%ebp)
46ee20:	6a 01                	push   $0x1
46ee22:	68 01 00 00 00       	push   $0x1
46ee27:	6a 01                	push   $0x1
46ee29:	ff 75 fc             	push   -0x4(%ebp)
46ee2c:	ff 75 f8             	push   -0x8(%ebp)
46ee2f:	8b 04 24             	mov    (%esp),%eax
46ee32:	8b 00                	mov    (%eax),%eax
46ee34:	8b 00                	mov    (%eax),%eax
46ee36:	ff 90 94 01 00 00    	call   *0x194(%eax)
46ee3c:	8b 5d 08             	mov    0x8(%ebp),%ebx
46ee3f:	8b 1b                	mov    (%ebx),%ebx
46ee41:	81 c3 78 01 00 00    	add    $0x178,%ebx
46ee47:	89 5d f8             	mov    %ebx,-0x8(%ebp)
46ee4a:	ff 75 f8             	push   -0x8(%ebp)
46ee4d:	8b 04 24             	mov    (%esp),%eax
46ee50:	8b 00                	mov    (%eax),%eax
46ee52:	8b 00                	mov    (%eax),%eax
46ee54:	ff 50 68             	call   *0x68(%eax)
46ee57:	89 45 f4             	mov    %eax,-0xc(%ebp)
46ee5a:	8b 5d 08             	mov    0x8(%ebp),%ebx
46ee5d:	8b 1b                	mov    (%ebx),%ebx
46ee5f:	81 c3 78 01 00 00    	add    $0x178,%ebx
46ee65:	89 5d f0             	mov    %ebx,-0x10(%ebp)
46ee68:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%ebp)
46ee6f:	6a 00                	push   $0x0
46ee71:	ff 75 ec             	push   -0x14(%ebp)
46ee74:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
46ee7b:	6a 00                	push   $0x0
46ee7d:	ff 75 e8             	push   -0x18(%ebp)
46ee80:	ff 75 f0             	push   -0x10(%ebp)
46ee83:	8b 04 24             	mov    (%esp),%eax
46ee86:	8b 00                	mov    (%eax),%eax
46ee88:	8b 00                	mov    (%eax),%eax
46ee8a:	ff 90 94 01 00 00    	call   *0x194(%eax)
46ee90:	89 45 e4             	mov    %eax,-0x1c(%ebp)
46ee93:	68 00 00 00 00       	push   $0x0
46ee98:	ff 75 e4             	push   -0x1c(%ebp)
46ee9b:	ff 75 f4             	push   -0xc(%ebp)
46ee9e:	ff 75 08             	push   0x8(%ebp)
46eea1:	8b 04 24             	mov    (%esp),%eax
46eea4:	8b 00                	mov    (%eax),%eax
46eea6:	8b 00                	mov    (%eax),%eax
46eea8:	ff 90 6c 01 00 00    	call   *0x16c(%eax)
46eeae:	b8 01 00 00 00       	mov    $0x1,%eax
46eeb3:	e9 0a 00 00 00       	jmp    0x46eec2
46eeb8:	b8 00 00 00 00       	mov    $0x0,%eax
46eebd:	e9 00 00 00 00       	jmp    0x46eec2
46eec2:	8b e5                	mov    %ebp,%esp
46eec4:	5d                   	pop    %ebp
46eec5:	c2 08 00             	ret    $0x8
46eec8:	55                   	push   %ebp
46eec9:	8b ec                	mov    %esp,%ebp
46eecb:	81 ec 08 00 00 00    	sub    $0x8,%esp
46eed1:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
46eed5:	b8 00 00 00 00       	mov    $0x0,%eax
46eeda:	0f 94 c0             	sete   %al
46eedd:	83 e0 01             	and    $0x1,%eax
46eee0:	83 f0 01             	xor    $0x1,%eax
46eee3:	85 c0                	test   %eax,%eax
46eee5:	0f 84 16 00 00 00    	je     0x46ef01
46eeeb:	8b 5d 08             	mov    0x8(%ebp),%ebx
46eeee:	8b 1b                	mov    (%ebx),%ebx
46eef0:	81 c3 a0 01 00 00    	add    $0x1a0,%ebx
46eef6:	89 5d fc             	mov    %ebx,-0x4(%ebp)
46eef9:	8b 45 0c             	mov    0xc(%ebp),%eax
46eefc:	8b 5d fc             	mov    -0x4(%ebp),%ebx
46eeff:	89 03                	mov    %eax,(%ebx)
46ef01:	8b 5d 08             	mov    0x8(%ebp),%ebx
46ef04:	8b 1b                	mov    (%ebx),%ebx
46ef06:	81 c3 a0 01 00 00    	add    $0x1a0,%ebx
46ef0c:	89 5d fc             	mov    %ebx,-0x4(%ebp)
46ef0f:	8b 5d fc             	mov    -0x4(%ebp),%ebx
46ef12:	8b 03                	mov    (%ebx),%eax
46ef14:	e9 00 00 00 00       	jmp    0x46ef19
46ef19:	8b e5                	mov    %ebp,%esp
46ef1b:	5d                   	pop    %ebp
46ef1c:	c2 0c 00             	ret    $0xc
46ef1f:	55                   	push   %ebp
46ef20:	8b ec                	mov    %esp,%ebp
46ef22:	81 ec 08 00 00 00    	sub    $0x8,%esp
46ef28:	6a 01                	push   $0x1
46ef2a:	ff 75 10             	push   0x10(%ebp)
46ef2d:	6a 01                	push   $0x1
46ef2f:	ff 75 0c             	push   0xc(%ebp)
46ef32:	ff 75 08             	push   0x8(%ebp)
46ef35:	8b 04 24             	mov    (%esp),%eax
46ef38:	8b 00                	mov    (%eax),%eax
46ef3a:	8b 00                	mov    (%eax),%eax
46ef3c:	ff 90 90 01 00 00    	call   *0x190(%eax)
46ef42:	85 c0                	test   %eax,%eax
46ef44:	0f 84 fc 00 00 00    	je     0x46f046
46ef4a:	8b 5d 08             	mov    0x8(%ebp),%ebx
46ef4d:	8b 1b                	mov    (%ebx),%ebx
46ef4f:	8b 9b 1c 01 00 00    	mov    0x11c(%ebx),%ebx
46ef55:	e8 99 47 f9 ff       	call   0x4036f3
46ef5a:	53                   	push   %ebx
46ef5b:	51                   	push   %ecx
46ef5c:	8b 45 0c             	mov    0xc(%ebp),%eax
46ef5f:	48                   	dec    %eax
46ef60:	79 17                	jns    0x46ef79
46ef62:	68 34 00 00 00       	push   $0x34
46ef67:	68 aa d1 03 04       	push   $0x403d1aa
46ef6c:	68 04 00 00 00       	push   $0x4
46ef71:	e8 34 16 03 00       	call   0x4a05aa
46ef76:	83 c4 0c             	add    $0xc,%esp
46ef79:	59                   	pop    %ecx
46ef7a:	5b                   	pop    %ebx
46ef7b:	3b c1                	cmp    %ecx,%eax
46ef7d:	7c 17                	jl     0x46ef96
46ef7f:	68 34 00 00 00       	push   $0x34
46ef84:	68 aa d1 03 04       	push   $0x403d1aa
46ef89:	68 01 00 00 00       	push   $0x1
46ef8e:	e8 17 16 03 00       	call   0x4a05aa
46ef93:	83 c4 0c             	add    $0xc,%esp
46ef96:	c1 e0 02             	shl    $0x2,%eax
46ef99:	03 d8                	add    %eax,%ebx
46ef9b:	8b 1b                	mov    (%ebx),%ebx
46ef9d:	8b 5b 04             	mov    0x4(%ebx),%ebx
46efa0:	e8 4e 47 f9 ff       	call   0x4036f3
46efa5:	53                   	push   %ebx
46efa6:	51                   	push   %ecx
46efa7:	8b 45 10             	mov    0x10(%ebp),%eax
46efaa:	48                   	dec    %eax
46efab:	79 17                	jns    0x46efc4
46efad:	68 34 00 00 00       	push   $0x34
46efb2:	68 aa d1 03 04       	push   $0x403d1aa
46efb7:	68 04 00 00 00       	push   $0x4
46efbc:	e8 e9 15 03 00       	call   0x4a05aa
46efc1:	83 c4 0c             	add    $0xc,%esp
46efc4:	59                   	pop    %ecx
46efc5:	5b                   	pop    %ebx
46efc6:	3b c1                	cmp    %ecx,%eax
46efc8:	7c 17                	jl     0x46efe1
46efca:	68 34 00 00 00       	push   $0x34
46efcf:	68 aa d1 03 04       	push   $0x403d1aa
46efd4:	68 01 00 00 00       	push   $0x1
46efd9:	e8 cc 15 03 00       	call   0x4a05aa
46efde:	83 c4 0c             	add    $0xc,%esp
46efe1:	c1 e0 02             	shl    $0x2,%eax
46efe4:	03 d8                	add    %eax,%ebx
46efe6:	89 5d fc             	mov    %ebx,-0x4(%ebp)
46efe9:	8b 45 14             	mov    0x14(%ebp),%eax
46efec:	8b 5d fc             	mov    -0x4(%ebp),%ebx
46efef:	89 03                	mov    %eax,(%ebx)
46eff1:	83 7d 18 00          	cmpl   $0x0,0x18(%ebp)
46eff5:	0f 85 0e 00 00 00    	jne    0x46f009
46effb:	83 7d 1c 00          	cmpl   $0x0,0x1c(%ebp)
46efff:	0f 84 04 00 00 00    	je     0x46f009
46f005:	33 c0                	xor    %eax,%eax
46f007:	eb 05                	jmp    0x46f00e
46f009:	b8 01 00 00 00       	mov    $0x1,%eax
46f00e:	85 c0                	test   %eax,%eax
46f010:	0f 84 26 00 00 00    	je     0x46f03c
46f016:	ff 75 08             	push   0x8(%ebp)
46f019:	e8 f0 75 fc ff       	call   0x43660e
46f01e:	89 45 fc             	mov    %eax,-0x4(%ebp)
46f021:	68 01 00 00 00       	push   $0x1
46f026:	ff 75 0c             	push   0xc(%ebp)
46f029:	ff 75 fc             	push   -0x4(%ebp)
46f02c:	ff 75 08             	push   0x8(%ebp)
46f02f:	8b 04 24             	mov    (%esp),%eax
46f032:	8b 00                	mov    (%eax),%eax
46f034:	8b 00                	mov    (%eax),%eax
46f036:	ff 90 84 01 00 00    	call   *0x184(%eax)
46f03c:	b8 01 00 00 00       	mov    $0x1,%eax
46f041:	e9 0a 00 00 00       	jmp    0x46f050
46f046:	b8 00 00 00 00       	mov    $0x0,%eax
46f04b:	e9 00 00 00 00       	jmp    0x46f050
46f050:	8b e5                	mov    %ebp,%esp
46f052:	5d                   	pop    %ebp
46f053:	c2 18 00             	ret    $0x18
46f056:	55                   	push   %ebp
46f057:	8b ec                	mov    %esp,%ebp
46f059:	81 ec 08 00 00 00    	sub    $0x8,%esp
46f05f:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
46f066:	6a 01                	push   $0x1
46f068:	ff 75 10             	push   0x10(%ebp)
46f06b:	6a 01                	push   $0x1
46f06d:	ff 75 0c             	push   0xc(%ebp)
46f070:	ff 75 08             	push   0x8(%ebp)
46f073:	8b 04 24             	mov    (%esp),%eax
46f076:	8b 00                	mov    (%eax),%eax
46f078:	8b 00                	mov    (%eax),%eax
46f07a:	ff 90 90 01 00 00    	call   *0x190(%eax)
46f080:	85 c0                	test   %eax,%eax
46f082:	0f 84 a7 00 00 00    	je     0x46f12f
46f088:	8b 5d 08             	mov    0x8(%ebp),%ebx
46f08b:	8b 1b                	mov    (%ebx),%ebx
46f08d:	8b 9b 1c 01 00 00    	mov    0x11c(%ebx),%ebx
46f093:	e8 5b 46 f9 ff       	call   0x4036f3
46f098:	53                   	push   %ebx
46f099:	51                   	push   %ecx
46f09a:	8b 45 0c             	mov    0xc(%ebp),%eax
46f09d:	48                   	dec    %eax
46f09e:	79 17                	jns    0x46f0b7
46f0a0:	68 34 00 00 00       	push   $0x34
46f0a5:	68 ab d1 03 04       	push   $0x403d1ab
46f0aa:	68 04 00 00 00       	push   $0x4
46f0af:	e8 f6 14 03 00       	call   0x4a05aa
46f0b4:	83 c4 0c             	add    $0xc,%esp
46f0b7:	59                   	pop    %ecx
46f0b8:	5b                   	pop    %ebx
46f0b9:	3b c1                	cmp    %ecx,%eax
46f0bb:	7c 17                	jl     0x46f0d4
46f0bd:	68 34 00 00 00       	push   $0x34
46f0c2:	68 ab d1 03 04       	push   $0x403d1ab
46f0c7:	68 01 00 00 00       	push   $0x1
46f0cc:	e8 d9 14 03 00       	call   0x4a05aa
46f0d1:	83 c4 0c             	add    $0xc,%esp
46f0d4:	c1 e0 02             	shl    $0x2,%eax
46f0d7:	03 d8                	add    %eax,%ebx
46f0d9:	8b 1b                	mov    (%ebx),%ebx
46f0db:	8b 5b 04             	mov    0x4(%ebx),%ebx
46f0de:	e8 10 46 f9 ff       	call   0x4036f3
46f0e3:	53                   	push   %ebx
46f0e4:	51                   	push   %ecx
46f0e5:	8b 45 10             	mov    0x10(%ebp),%eax
46f0e8:	48                   	dec    %eax
46f0e9:	79 17                	jns    0x46f102
46f0eb:	68 34 00 00 00       	push   $0x34
46f0f0:	68 ab d1 03 04       	push   $0x403d1ab
46f0f5:	68 04 00 00 00       	push   $0x4
46f0fa:	e8 ab 14 03 00       	call   0x4a05aa
46f0ff:	83 c4 0c             	add    $0xc,%esp
46f102:	59                   	pop    %ecx
46f103:	5b                   	pop    %ebx
46f104:	3b c1                	cmp    %ecx,%eax
46f106:	7c 17                	jl     0x46f11f
46f108:	68 34 00 00 00       	push   $0x34
46f10d:	68 ab d1 03 04       	push   $0x403d1ab
46f112:	68 01 00 00 00       	push   $0x1
46f117:	e8 8e 14 03 00       	call   0x4a05aa