558e28:	66 89 10             	mov    %dx,(%eax)
558e2b:	8a 55 fb             	mov    -0x5(%ebp),%dl
558e2e:	88 50 02             	mov    %dl,0x2(%eax)
558e31:	83 45 f4 03          	addl   $0x3,-0xc(%ebp)
558e35:	e9 8f 00 00 00       	jmp    0x558ec9
558e3a:	83 ee 03             	sub    $0x3,%esi
558e3d:	33 db                	xor    %ebx,%ebx
558e3f:	eb 04                	jmp    0x558e45
558e41:	83 c6 03             	add    $0x3,%esi
558e44:	43                   	inc    %ebx
558e45:	8b 45 fc             	mov    -0x4(%ebp),%eax
558e48:	83 e8 03             	sub    $0x3,%eax
558e4b:	3b f0                	cmp    %eax,%esi
558e4d:	7d 34                	jge    0x558e83
558e4f:	8b 87 08 24 00 00    	mov    0x2408(%edi),%eax
558e55:	03 c6                	add    %esi,%eax
558e57:	8a 50 02             	mov    0x2(%eax),%dl
558e5a:	c1 e2 10             	shl    $0x10,%edx
558e5d:	66 8b 10             	mov    (%eax),%dx
558e60:	52                   	push   %edx
558e61:	8b 87 08 24 00 00    	mov    0x2408(%edi),%eax
558e67:	8d 44 30 03          	lea    0x3(%eax,%esi,1),%eax
558e6b:	8a 50 02             	mov    0x2(%eax),%dl
558e6e:	c1 e2 10             	shl    $0x10,%edx
558e71:	66 8b 10             	mov    (%eax),%dx
558e74:	52                   	push   %edx
558e75:	e8 da 05 05 00       	call   0x5a9454
558e7a:	84 c0                	test   %al,%al
558e7c:	75 05                	jne    0x558e83
558e7e:	80 fb 7f             	cmp    $0x7f,%bl
558e81:	72 be                	jb     0x558e41
558e83:	8b 45 fc             	mov    -0x4(%ebp),%eax
558e86:	83 e8 03             	sub    $0x3,%eax
558e89:	3b f0                	cmp    %eax,%esi
558e8b:	75 04                	jne    0x558e91
558e8d:	83 c6 03             	add    $0x3,%esi
558e90:	43                   	inc    %ebx
558e91:	8b c3                	mov    %ebx,%eax
558e93:	48                   	dec    %eax
558e94:	8b 55 f4             	mov    -0xc(%ebp),%edx
558e97:	88 02                	mov    %al,(%edx)
558e99:	ff 45 f4             	incl   -0xc(%ebp)
558e9c:	33 c0                	xor    %eax,%eax
558e9e:	8a c3                	mov    %bl,%al
558ea0:	8d 04 40             	lea    (%eax,%eax,2),%eax
558ea3:	8b d6                	mov    %esi,%edx
558ea5:	2b d0                	sub    %eax,%edx
558ea7:	8b 87 08 24 00 00    	mov    0x2408(%edi),%eax
558ead:	8d 14 10             	lea    (%eax,%edx,1),%edx
558eb0:	33 c0                	xor    %eax,%eax
558eb2:	8a c3                	mov    %bl,%al
558eb4:	8d 0c 40             	lea    (%eax,%eax,2),%ecx
558eb7:	8b 45 f4             	mov    -0xc(%ebp),%eax
558eba:	e8 01 f0 ea ff       	call   0x407ec0
558ebf:	33 c0                	xor    %eax,%eax
558ec1:	8a c3                	mov    %bl,%al
558ec3:	8d 04 40             	lea    (%eax,%eax,2),%eax
558ec6:	01 45 f4             	add    %eax,-0xc(%ebp)
558ec9:	3b 75 fc             	cmp    -0x4(%ebp),%esi
558ecc:	0f 8c ee fe ff ff    	jl     0x558dc0
558ed2:	8b 87 10 24 00 00    	mov    0x2410(%edi),%eax
558ed8:	8b 55 f4             	mov    -0xc(%ebp),%edx
558edb:	2b d0                	sub    %eax,%edx
558edd:	52                   	push   %edx
558ede:	8b c8                	mov    %eax,%ecx
558ee0:	8b 45 08             	mov    0x8(%ebp),%eax
558ee3:	8b 50 0c             	mov    0xc(%eax),%edx
558ee6:	8b 52 28             	mov    0x28(%edx),%edx
558ee9:	8b 45 08             	mov    0x8(%ebp),%eax
558eec:	8b 40 d8             	mov    -0x28(%eax),%eax
558eef:	e8 08 d0 09 00       	call   0x5f5efc
558ef4:	5f                   	pop    %edi
558ef5:	5e                   	pop    %esi
558ef6:	5b                   	pop    %ebx
558ef7:	8b e5                	mov    %ebp,%esp
558ef9:	5d                   	pop    %ebp
558efa:	c3                   	ret
558efb:	90                   	nop
558efc:	55                   	push   %ebp
558efd:	8b ec                	mov    %esp,%ebp
558eff:	83 c4 f4             	add    $0xfffffff4,%esp
558f02:	53                   	push   %ebx
558f03:	56                   	push   %esi
558f04:	57                   	push   %edi
558f05:	8b 45 08             	mov    0x8(%ebp),%eax
558f08:	8b 40 d4             	mov    -0x2c(%eax),%eax
558f0b:	89 45 f4             	mov    %eax,-0xc(%ebp)
558f0e:	33 c0                	xor    %eax,%eax
558f10:	89 45 fc             	mov    %eax,-0x4(%ebp)
558f13:	8b 45 08             	mov    0x8(%ebp),%eax
558f16:	db 40 dc             	fildl  -0x24(%eax)
558f19:	d8 3d 3c 91 55 00    	fdivrs 0x55913c
558f1f:	8b 45 08             	mov    0x8(%ebp),%eax
558f22:	8b 40 0c             	mov    0xc(%eax),%eax
558f25:	dd 58 18             	fstpl  0x18(%eax)
558f28:	9b                   	fwait
558f29:	8b 45 08             	mov    0x8(%ebp),%eax
558f2c:	8b 40 0c             	mov    0xc(%eax),%eax
558f2f:	33 d2                	xor    %edx,%edx
558f31:	89 50 0c             	mov    %edx,0xc(%eax)
558f34:	8b 45 08             	mov    0x8(%ebp),%eax
558f37:	83 78 e4 20          	cmpl   $0x20,-0x1c(%eax)
558f3b:	75 18                	jne    0x558f55
558f3d:	8b 45 08             	mov    0x8(%ebp),%eax
558f40:	8b 40 d0             	mov    -0x30(%eax),%eax
558f43:	8b 10                	mov    (%eax),%edx
558f45:	ff 52 0c             	call   *0xc(%edx)
558f48:	c1 e0 02             	shl    $0x2,%eax
558f4b:	e8 5c 98 ea ff       	call   0x4027ac
558f50:	89 45 f8             	mov    %eax,-0x8(%ebp)
558f53:	eb 05                	jmp    0x558f5a
558f55:	33 c0                	xor    %eax,%eax
558f57:	89 45 f8             	mov    %eax,-0x8(%ebp)
558f5a:	8b 45 08             	mov    0x8(%ebp),%eax
558f5d:	8b 40 d0             	mov    -0x30(%eax),%eax
558f60:	8b 55 fc             	mov    -0x4(%ebp),%edx
558f63:	8b 08                	mov    (%eax),%ecx
558f65:	ff 11                	call   *(%ecx)
558f67:	8b d8                	mov    %eax,%ebx
558f69:	8b 45 f4             	mov    -0xc(%ebp),%eax
558f6c:	89 98 04 24 00 00    	mov    %ebx,0x2404(%eax)
558f72:	8b 45 08             	mov    0x8(%ebp),%eax
558f75:	83 78 e4 20          	cmpl   $0x20,-0x1c(%eax)
558f79:	75 3a                	jne    0x558fb5
558f7b:	6a 18                	push   $0x18
558f7d:	8b 45 08             	mov    0x8(%ebp),%eax
558f80:	66 8b 40 e0          	mov    -0x20(%eax),%ax
558f84:	50                   	push   %eax
558f85:	8b 45 f4             	mov    -0xc(%ebp),%eax
558f88:	05 00 20 00 00       	add    $0x2000,%eax
558f8d:	50                   	push   %eax
558f8e:	68 ff 00 00 00       	push   $0xff
558f93:	8b 45 08             	mov    0x8(%ebp),%eax
558f96:	8b 40 c8             	mov    -0x38(%eax),%eax
558f99:	50                   	push   %eax
558f9a:	8b 45 08             	mov    0x8(%ebp),%eax
558f9d:	66 8b 48 cc          	mov    -0x34(%eax),%cx
558fa1:	8b 45 f4             	mov    -0xc(%ebp),%eax
558fa4:	8b 90 08 24 00 00    	mov    0x2408(%eax),%edx
558faa:	8b c3                	mov    %ebx,%eax
558fac:	e8 c7 a7 05 00       	call   0x5b3778
558fb1:	8b d8                	mov    %eax,%ebx
558fb3:	eb 3e                	jmp    0x558ff3
558fb5:	8b 45 08             	mov    0x8(%ebp),%eax
558fb8:	66 8b 40 e4          	mov    -0x1c(%eax),%ax
558fbc:	50                   	push   %eax
558fbd:	8b 45 08             	mov    0x8(%ebp),%eax
558fc0:	66 8b 40 e0          	mov    -0x20(%eax),%ax
558fc4:	50                   	push   %eax
558fc5:	8b 45 f4             	mov    -0xc(%ebp),%eax
558fc8:	05 00 20 00 00       	add    $0x2000,%eax
558fcd:	50                   	push   %eax
558fce:	68 ff 00 00 00       	push   $0xff
558fd3:	8b 45 08             	mov    0x8(%ebp),%eax
558fd6:	8b 40 c8             	mov    -0x38(%eax),%eax
558fd9:	50                   	push   %eax
558fda:	8b 45 08             	mov    0x8(%ebp),%eax
558fdd:	66 8b 48 cc          	mov    -0x34(%eax),%cx
558fe1:	8b 45 f4             	mov    -0xc(%ebp),%eax
558fe4:	8b 90 08 24 00 00    	mov    0x2408(%eax),%edx
558fea:	8b c3                	mov    %ebx,%eax
558fec:	e8 87 a7 05 00       	call   0x5b3778
558ff1:	8b d8                	mov    %eax,%ebx
558ff3:	8b 45 08             	mov    0x8(%ebp),%eax
558ff6:	8b 40 e8             	mov    -0x18(%eax),%eax
558ff9:	8b 00                	mov    (%eax),%eax
558ffb:	80 b8 60 01 00 00 00 	cmpb   $0x0,0x160(%eax)
559002:	74 13                	je     0x559017
559004:	8b 45 08             	mov    0x8(%ebp),%eax
559007:	83 78 e4 08          	cmpl   $0x8,-0x1c(%eax)
55900b:	75 0a                	jne    0x559017
55900d:	8b 45 08             	mov    0x8(%ebp),%eax
559010:	50                   	push   %eax
559011:	e8 46 fc ff ff       	call   0x558c5c
559016:	59                   	pop    %ecx
559017:	8b 45 08             	mov    0x8(%ebp),%eax
55901a:	8b 40 e8             	mov    -0x18(%eax),%eax
55901d:	8b 00                	mov    (%eax),%eax
55901f:	80 b8 34 01 00 00 00 	cmpb   $0x0,0x134(%eax)
559026:	74 0f                	je     0x559037
559028:	8b 45 08             	mov    0x8(%ebp),%eax
55902b:	50                   	push   %eax
55902c:	e8 97 fc ff ff       	call   0x558cc8
559031:	59                   	pop    %ecx
559032:	e9 97 00 00 00       	jmp    0x5590ce
559037:	8b 45 08             	mov    0x8(%ebp),%eax
55903a:	83 78 e4 20          	cmpl   $0x20,-0x1c(%eax)
55903e:	75 70                	jne    0x5590b0
559040:	8b 45 08             	mov    0x8(%ebp),%eax
559043:	8b 40 08             	mov    0x8(%eax),%eax
559046:	8b 55 fc             	mov    -0x4(%ebp),%edx
559049:	e8 c6 b6 09 00       	call   0x5f4714
55904e:	8b f8                	mov    %eax,%edi
559050:	8b 5d f8             	mov    -0x8(%ebp),%ebx
559053:	8b 45 f4             	mov    -0xc(%ebp),%eax
559056:	8b b0 08 24 00 00    	mov    0x2408(%eax),%esi
55905c:	8b 45 08             	mov    0x8(%ebp),%eax
55905f:	8b 40 d0             	mov    -0x30(%eax),%eax
559062:	8b 10                	mov    (%eax),%edx
559064:	ff 52 0c             	call   *0xc(%edx)
559067:	48                   	dec    %eax
559068:	85 c0                	test   %eax,%eax
55906a:	7c 1c                	jl     0x559088
55906c:	40                   	inc    %eax
55906d:	8a 16                	mov    (%esi),%dl
55906f:	88 13                	mov    %dl,(%ebx)
559071:	43                   	inc    %ebx
559072:	46                   	inc    %esi
559073:	8a 16                	mov    (%esi),%dl
559075:	88 13                	mov    %dl,(%ebx)
559077:	43                   	inc    %ebx
559078:	46                   	inc    %esi
559079:	8a 16                	mov    (%esi),%dl
55907b:	88 13                	mov    %dl,(%ebx)
55907d:	43                   	inc    %ebx
55907e:	46                   	inc    %esi
55907f:	8a 17                	mov    (%edi),%dl
559081:	88 13                	mov    %dl,(%ebx)
559083:	43                   	inc    %ebx
559084:	47                   	inc    %edi
559085:	48                   	dec    %eax
559086:	75 e5                	jne    0x55906d
559088:	8b 45 08             	mov    0x8(%ebp),%eax
55908b:	8b 40 d0             	mov    -0x30(%eax),%eax
55908e:	8b 10                	mov    (%eax),%edx
559090:	ff 52 0c             	call   *0xc(%edx)
559093:	c1 e0 02             	shl    $0x2,%eax
559096:	50                   	push   %eax
559097:	8b 4d f8             	mov    -0x8(%ebp),%ecx
55909a:	8b 45 08             	mov    0x8(%ebp),%eax
55909d:	8b 50 0c             	mov    0xc(%eax),%edx
5590a0:	8b 52 28             	mov    0x28(%edx),%edx
5590a3:	8b 45 08             	mov    0x8(%ebp),%eax
5590a6:	8b 40 d8             	mov    -0x28(%eax),%eax
5590a9:	e8 4e ce 09 00       	call   0x5f5efc
5590ae:	eb 1e                	jmp    0x5590ce
5590b0:	53                   	push   %ebx
5590b1:	8b 45 f4             	mov    -0xc(%ebp),%eax
5590b4:	8b 88 08 24 00 00    	mov    0x2408(%eax),%ecx
5590ba:	8b 45 08             	mov    0x8(%ebp),%eax
5590bd:	8b 50 0c             	mov    0xc(%eax),%edx
5590c0:	8b 52 28             	mov    0x28(%edx),%edx
5590c3:	8b 45 08             	mov    0x8(%ebp),%eax
5590c6:	8b 40 d8             	mov    -0x28(%eax),%eax
5590c9:	e8 2e ce 09 00       	call   0x5f5efc
5590ce:	ff 45 fc             	incl   -0x4(%ebp)
5590d1:	8b 45 08             	mov    0x8(%ebp),%eax
5590d4:	8b 40 0c             	mov    0xc(%eax),%eax
5590d7:	ff 40 0c             	incl   0xc(%eax)
5590da:	8b 45 08             	mov    0x8(%ebp),%eax
5590dd:	8b 40 0c             	mov    0xc(%eax),%eax
5590e0:	66 83 78 02 00       	cmpw   $0x0,0x2(%eax)
5590e5:	74 2d                	je     0x559114
5590e7:	8b 45 08             	mov    0x8(%ebp),%eax
5590ea:	8b 40 0c             	mov    0xc(%eax),%eax
5590ed:	db 40 0c             	fildl  0xc(%eax)
5590f0:	8b 45 08             	mov    0x8(%ebp),%eax
5590f3:	8b 40 0c             	mov    0xc(%eax),%eax
5590f6:	dc 48 18             	fmull  0x18(%eax)
5590f9:	e8 ce 9b ea ff       	call   0x402ccc
5590fe:	8b c8                	mov    %eax,%ecx
559100:	8b 45 08             	mov    0x8(%ebp),%eax
559103:	8b 58 0c             	mov    0xc(%eax),%ebx
559106:	8b 45 08             	mov    0x8(%ebp),%eax
559109:	8b 50 0c             	mov    0xc(%eax),%edx
55910c:	8b 52 08             	mov    0x8(%edx),%edx
55910f:	8b 43 04             	mov    0x4(%ebx),%eax
559112:	ff 13                	call   *(%ebx)
559114:	8b 45 08             	mov    0x8(%ebp),%eax
559117:	8b 40 dc             	mov    -0x24(%eax),%eax
55911a:	3b 45 fc             	cmp    -0x4(%ebp),%eax
55911d:	0f 8f 37 fe ff ff    	jg     0x558f5a
559123:	8b 45 08             	mov    0x8(%ebp),%eax
559126:	83 78 e4 20          	cmpl   $0x20,-0x1c(%eax)
55912a:	75 08                	jne    0x559134
55912c:	8b 45 f8             	mov    -0x8(%ebp),%eax
55912f:	e8 98 96 ea ff       	call   0x4027cc
559134:	5f                   	pop    %edi
559135:	5e                   	pop    %esi
559136:	5b                   	pop    %ebx
559137:	8b e5                	mov    %ebp,%esp
559139:	5d                   	pop    %ebp
55913a:	c3                   	ret
55913b:	00 00                	add    %al,(%eax)
55913d:	00 c8                	add    %cl,%al
55913f:	42                   	inc    %edx
559140:	55                   	push   %ebp
559141:	8b ec                	mov    %esp,%ebp
559143:	51                   	push   %ecx
559144:	53                   	push   %ebx
559145:	56                   	push   %esi
559146:	57                   	push   %edi
559147:	8b 7d 08             	mov    0x8(%ebp),%edi
55914a:	8b 7f e8             	mov    -0x18(%edi),%edi
55914d:	8b 45 08             	mov    0x8(%ebp),%eax
559150:	8b 70 d4             	mov    -0x2c(%eax),%esi
559153:	8d 9e 33 24 00 00    	lea    0x2433(%esi),%ebx
559159:	8d 86 33 24 00 00    	lea    0x2433(%esi),%eax
55915f:	ba ef 01 00 00       	mov    $0x1ef,%edx
559164:	e8 6b ed ea ff       	call   0x407ed4
559169:	8b 07                	mov    (%edi),%eax
55916b:	8b 80 3c 01 00 00    	mov    0x13c(%eax),%eax
559171:	e8 a2 bb ea ff       	call   0x404d18
559176:	8b d0                	mov    %eax,%edx
559178:	8d 43 02             	lea    0x2(%ebx),%eax
55917b:	e8 ac 0c eb ff       	call   0x409e2c
559180:	8b 07                	mov    (%edi),%eax
559182:	8b 80 48 01 00 00    	mov    0x148(%eax),%eax
559188:	e8 8b bb ea ff       	call   0x404d18
55918d:	8b d0                	mov    %eax,%edx
55918f:	8d 83 7b 01 00 00    	lea    0x17b(%ebx),%eax
559195:	e8 92 0c eb ff       	call   0x409e2c
55919a:	8b 07                	mov    (%edi),%eax
55919c:	ff b0 44 01 00 00    	push   0x144(%eax)
5591a2:	ff b0 40 01 00 00    	push   0x140(%eax)
5591a8:	8d 8b 71 01 00 00    	lea    0x171(%ebx),%ecx
5591ae:	8d 93 6f 01 00 00    	lea    0x16f(%ebx),%edx
5591b4:	8d 83 73 01 00 00    	lea    0x173(%ebx),%eax
5591ba:	e8 f9 20 eb ff       	call   0x40b2b8
5591bf:	8b 07                	mov    (%edi),%eax
5591c1:	ff b0 44 01 00 00    	push   0x144(%eax)
5591c7:	ff b0 40 01 00 00    	push   0x140(%eax)
5591cd:	8d 45 fe             	lea    -0x2(%ebp),%eax
5591d0:	50                   	push   %eax
5591d1:	8d 8b 79 01 00 00    	lea    0x179(%ebx),%ecx
5591d7:	8d 93 77 01 00 00    	lea    0x177(%ebx),%edx
5591dd:	8d 83 75 01 00 00    	lea    0x175(%ebx),%eax
5591e3:	e8 f4 1d eb ff       	call   0x40afdc
5591e8:	c6 83 d6 01 00 00 00 	movb   $0x0,0x1d6(%ebx)
5591ef:	8b 07                	mov    (%edi),%eax
5591f1:	8a 80 4e 01 00 00    	mov    0x14e(%eax),%al
5591f7:	88 83 d7 01 00 00    	mov    %al,0x1d7(%ebx)
5591fd:	8b 07                	mov    (%edi),%eax
5591ff:	8a 80 4d 01 00 00    	mov    0x14d(%eax),%al
559205:	88 83 d8 01 00 00    	mov    %al,0x1d8(%ebx)
55920b:	8b 07                	mov    (%edi),%eax
55920d:	8a 80 4c 01 00 00    	mov    0x14c(%eax),%al
559213:	88 83 d9 01 00 00    	mov    %al,0x1d9(%ebx)
559219:	8b 07                	mov    (%edi),%eax
55921b:	dd 80 50 01 00 00    	fldl   0x150(%eax)
559221:	e8 a6 9a ea ff       	call   0x402ccc
559226:	66 69 c0 10 27       	imul   $0x2710,%ax,%ax
55922b:	66 89 83 da 01 00 00 	mov    %ax,0x1da(%ebx)
559232:	66 c7 83 dc 01 00 00 	movw   $0x2710,0x1dc(%ebx)
559239:	10 27
55923b:	8b 07                	mov    (%edi),%eax
55923d:	dd 80 58 01 00 00    	fldl   0x158(%eax)
559243:	e8 84 9a ea ff       	call   0x402ccc
559248:	66 69 c0 10 27       	imul   $0x2710,%ax,%ax
55924d:	66 89 83 de 01 00 00 	mov    %ax,0x1de(%ebx)