545da7:	eb 3f                	jmp    0x545de8
545da9:	8d 14 0e             	lea    (%esi,%ecx,1),%edx
545dac:	81 fa a0 86 01 00    	cmp    $0x186a0,%edx
545db2:	7d 20                	jge    0x545dd4
545db4:	8b c1                	mov    %ecx,%eax
545db6:	33 d2                	xor    %edx,%edx
545db8:	c1 e0 0f             	shl    $0xf,%eax
545dbb:	b9 a0 86 01 00       	mov    $0x186a0,%ecx
545dc0:	f7 f1                	div    %ecx
545dc2:	8b c8                	mov    %eax,%ecx
545dc4:	8b c6                	mov    %esi,%eax
545dc6:	c1 e0 0f             	shl    $0xf,%eax
545dc9:	be a0 86 01 00       	mov    $0x186a0,%esi
545dce:	33 d2                	xor    %edx,%edx
545dd0:	f7 f6                	div    %esi
545dd2:	eb 14                	jmp    0x545de8
545dd4:	ba f3 ac 69 00       	mov    $0x69acf3,%edx
545dd9:	8b c3                	mov    %ebx,%eax
545ddb:	e8 7c 51 00 00       	call   0x54af5c
545de0:	66 b9 38 1b          	mov    $0x1b38,%cx
545de4:	66 b8 8a 5b          	mov    $0x5b8a,%ax
545de8:	66 89 8b e6 01 00 00 	mov    %cx,0x1e6(%ebx)
545def:	66 89 83 e8 01 00 00 	mov    %ax,0x1e8(%ebx)
545df6:	66 ba 00 80          	mov    $0x8000,%dx
545dfa:	66 2b d1             	sub    %cx,%dx
545dfd:	66 2b d0             	sub    %ax,%dx
545e00:	66 89 93 ea 01 00 00 	mov    %dx,0x1ea(%ebx)
545e07:	5e                   	pop    %esi
545e08:	5b                   	pop    %ebx
545e09:	5d                   	pop    %ebp
545e0a:	c2 04 00             	ret    $0x4
545e0d:	90                   	nop
545e0e:	90                   	nop
545e0f:	90                   	nop
545e10:	81 48 30 00 00 10 00 	orl    $0x100000,0x30(%eax)
545e17:	89 50 18             	mov    %edx,0x18(%eax)
545e1a:	c3                   	ret
545e1b:	90                   	nop
545e1c:	53                   	push   %ebx
545e1d:	56                   	push   %esi
545e1e:	57                   	push   %edi
545e1f:	81 c4 58 ff ff ff    	add    $0xffffff58,%esp
545e25:	8b d8                	mov    %eax,%ebx
545e27:	33 c0                	xor    %eax,%eax
545e29:	8a 83 e6 00 00 00    	mov    0xe6(%ebx),%al
545e2f:	89 04 24             	mov    %eax,(%esp)
545e32:	f6 43 31 01          	testb  $0x1,0x31(%ebx)
545e36:	0f 84 d9 01 00 00    	je     0x546015
545e3c:	f6 43 31 10          	testb  $0x10,0x31(%ebx)
545e40:	0f 84 cf 01 00 00    	je     0x546015
545e46:	f6 04 24 02          	testb  $0x2,(%esp)
545e4a:	0f 85 09 01 00 00    	jne    0x545f59
545e50:	33 d2                	xor    %edx,%edx
545e52:	8a 93 e7 00 00 00    	mov    0xe7(%ebx),%dl
545e58:	83 fa 10             	cmp    $0x10,%edx
545e5b:	0f 87 b4 01 00 00    	ja     0x546015
545e61:	8a 92 6e 5e 54 00    	mov    0x545e6e(%edx),%dl
545e67:	ff 24 95 7f 5e 54 00 	jmp    *0x545e7f(,%edx,4)
545e6e:	00 04 03             	add    %al,(%ebx,%eax,1)
545e71:	00 02                	add    %al,(%edx)
545e73:	00 00                	add    %al,(%eax)
545e75:	00 01                	add    %al,(%ecx)
545e77:	00 00                	add    %al,(%eax)
545e79:	00 00                	add    %al,(%eax)
545e7b:	00 00                	add    %al,(%eax)
545e7d:	00 01                	add    %al,(%ecx)
545e7f:	15 60 54 00 38       	adc    $0x38005460,%eax
545e84:	5f                   	pop    %edi
545e85:	54                   	push   %esp
545e86:	00 02                	add    %al,(%edx)
545e88:	5f                   	pop    %edi
545e89:	54                   	push   %esp
545e8a:	00 c9                	add    %cl,%cl
545e8c:	5e                   	pop    %esi
545e8d:	54                   	push   %esp
545e8e:	00 93 5e 54 00 66    	add    %dl,0x6600545e(%ebx)
545e94:	8b 8b 00 01 00 00    	mov    0x100(%ebx),%ecx
545e9a:	8b c1                	mov    %ecx,%eax
545e9c:	c1 e1 08             	shl    $0x8,%ecx
545e9f:	2b c8                	sub    %eax,%ecx
545ea1:	66 89 8b 00 01 00 00 	mov    %cx,0x100(%ebx)
545ea8:	66 8b 93 00 01 00 00 	mov    0x100(%ebx),%dx
545eaf:	66 89 93 fe 00 00 00 	mov    %dx,0xfe(%ebx)
545eb6:	66 89 93 fc 00 00 00 	mov    %dx,0xfc(%ebx)
545ebd:	66 89 93 fa 00 00 00 	mov    %dx,0xfa(%ebx)
545ec4:	e9 4c 01 00 00       	jmp    0x546015
545ec9:	66 8b 83 00 01 00 00 	mov    0x100(%ebx),%ax
545ed0:	8b c8                	mov    %eax,%ecx
545ed2:	c1 e0 04             	shl    $0x4,%eax
545ed5:	03 c1                	add    %ecx,%eax
545ed7:	8d 04 80             	lea    (%eax,%eax,4),%eax
545eda:	66 89 83 00 01 00 00 	mov    %ax,0x100(%ebx)
545ee1:	66 8b 83 00 01 00 00 	mov    0x100(%ebx),%ax
545ee8:	66 89 83 fe 00 00 00 	mov    %ax,0xfe(%ebx)
545eef:	66 89 83 fc 00 00 00 	mov    %ax,0xfc(%ebx)
545ef6:	66 89 83 fa 00 00 00 	mov    %ax,0xfa(%ebx)
545efd:	e9 13 01 00 00       	jmp    0x546015
545f02:	66 8b 93 00 01 00 00 	mov    0x100(%ebx),%dx
545f09:	8b ca                	mov    %edx,%ecx
545f0b:	c1 e2 04             	shl    $0x4,%edx
545f0e:	03 d1                	add    %ecx,%edx
545f10:	66 89 93 00 01 00 00 	mov    %dx,0x100(%ebx)
545f17:	66 8b 83 00 01 00 00 	mov    0x100(%ebx),%ax
545f1e:	66 89 83 fe 00 00 00 	mov    %ax,0xfe(%ebx)
545f25:	66 89 83 fc 00 00 00 	mov    %ax,0xfc(%ebx)
545f2c:	66 89 83 fa 00 00 00 	mov    %ax,0xfa(%ebx)
545f33:	e9 dd 00 00 00       	jmp    0x546015
545f38:	66 8b 93 00 01 00 00 	mov    0x100(%ebx),%dx
545f3f:	66 89 93 fe 00 00 00 	mov    %dx,0xfe(%ebx)
545f46:	66 89 93 fc 00 00 00 	mov    %dx,0xfc(%ebx)
545f4d:	66 89 93 fa 00 00 00 	mov    %dx,0xfa(%ebx)
545f54:	e9 bc 00 00 00       	jmp    0x546015
545f59:	8b 04 24             	mov    (%esp),%eax
545f5c:	83 f8 03             	cmp    $0x3,%eax
545f5f:	0f 85 b0 00 00 00    	jne    0x546015
545f65:	33 c9                	xor    %ecx,%ecx
545f67:	8a 8b f8 00 00 00    	mov    0xf8(%ebx),%cl
545f6d:	8d 04 49             	lea    (%ecx,%ecx,2),%eax
545f70:	8b 93 d4 00 00 00    	mov    0xd4(%ebx),%edx
545f76:	33 c9                	xor    %ecx,%ecx
545f78:	8a 0c 02             	mov    (%edx,%eax,1),%cl
545f7b:	66 89 8b fa 00 00 00 	mov    %cx,0xfa(%ebx)
545f82:	33 c0                	xor    %eax,%eax
545f84:	8a 83 f8 00 00 00    	mov    0xf8(%ebx),%al
545f8a:	8d 14 40             	lea    (%eax,%eax,2),%edx
545f8d:	8b 8b d4 00 00 00    	mov    0xd4(%ebx),%ecx
545f93:	33 c0                	xor    %eax,%eax
545f95:	8a 44 11 01          	mov    0x1(%ecx,%edx,1),%al
545f99:	66 89 83 fc 00 00 00 	mov    %ax,0xfc(%ebx)
545fa0:	33 d2                	xor    %edx,%edx
545fa2:	8a 93 f8 00 00 00    	mov    0xf8(%ebx),%dl
545fa8:	8d 0c 52             	lea    (%edx,%edx,2),%ecx
545fab:	8b 83 d4 00 00 00    	mov    0xd4(%ebx),%eax
545fb1:	33 d2                	xor    %edx,%edx
545fb3:	8a 54 08 02          	mov    0x2(%eax,%ecx,1),%dl
545fb7:	66 89 93 fe 00 00 00 	mov    %dx,0xfe(%ebx)
545fbe:	f6 43 32 08          	testb  $0x8,0x32(%ebx)
545fc2:	74 51                	je     0x546015
545fc4:	f6 43 31 10          	testb  $0x10,0x31(%ebx)
545fc8:	75 4b                	jne    0x546015
545fca:	0f b7 8b da 00 00 00 	movzwl 0xda(%ebx),%ecx
545fd1:	89 4c 24 08          	mov    %ecx,0x8(%esp)
545fd5:	33 c0                	xor    %eax,%eax
545fd7:	89 44 24 04          	mov    %eax,0x4(%esp)
545fdb:	8b 54 24 04          	mov    0x4(%esp),%edx
545fdf:	8b 4c 24 08          	mov    0x8(%esp),%ecx
545fe3:	3b d1                	cmp    %ecx,%edx
545fe5:	7d 2e                	jge    0x546015
545fe7:	8b 83 48 01 00 00    	mov    0x148(%ebx),%eax
545fed:	8b 54 24 04          	mov    0x4(%esp),%edx
545ff1:	b1 ff                	mov    $0xff,%cl
545ff3:	8a 04 10             	mov    (%eax,%edx,1),%al
545ff6:	2a c8                	sub    %al,%cl
545ff8:	8b 93 48 01 00 00    	mov    0x148(%ebx),%edx
545ffe:	8b 44 24 04          	mov    0x4(%esp),%eax
546002:	88 0c 02             	mov    %cl,(%edx,%eax,1)
546005:	ff 44 24 04          	incl   0x4(%esp)
546009:	8b 54 24 04          	mov    0x4(%esp),%edx
54600d:	8b 4c 24 08          	mov    0x8(%esp),%ecx
546011:	3b d1                	cmp    %ecx,%edx
546013:	7c d2                	jl     0x545fe7
546015:	8b 83 f8 00 00 00    	mov    0xf8(%ebx),%eax
54601b:	89 83 02 01 00 00    	mov    %eax,0x102(%ebx)
546021:	8b 83 fc 00 00 00    	mov    0xfc(%ebx),%eax
546027:	89 83 06 01 00 00    	mov    %eax,0x106(%ebx)
54602d:	66 8b 83 00 01 00 00 	mov    0x100(%ebx),%ax
546034:	66 89 83 0a 01 00 00 	mov    %ax,0x10a(%ebx)
54603b:	8b 14 24             	mov    (%esp),%edx
54603e:	83 fa 03             	cmp    $0x3,%edx
546041:	75 74                	jne    0x5460b7
546043:	66 83 bb da 00 00 00 	cmpw   $0x0,0xda(%ebx)
54604a:	00
54604b:	74 6a                	je     0x5460b7
54604d:	d9 83 20 01 00 00    	flds   0x120(%ebx)
546053:	d8 8b 1c 01 00 00    	fmuls  0x11c(%ebx)
546059:	d8 25 10 6c 54 00    	fsubs  0x546c10
54605f:	83 c4 f8             	add    $0xfffffff8,%esp
546062:	dd 1c 24             	fstpl  (%esp)
546065:	e8 aa 03 fe ff       	call   0x526414
54606a:	83 c4 08             	add    $0x8,%esp
54606d:	dc 1d 14 6c 54 00    	fcompl 0x546c14
546073:	df e0                	fnstsw %ax
546075:	9e                   	sahf
546076:	73 3f                	jae    0x5460b7
546078:	33 d2                	xor    %edx,%edx
54607a:	89 54 24 0c          	mov    %edx,0xc(%esp)
54607e:	33 d2                	xor    %edx,%edx
546080:	8b 83 48 01 00 00    	mov    0x148(%ebx),%eax
546086:	eb 15                	jmp    0x54609d
546088:	8a 08                	mov    (%eax),%cl
54608a:	84 c9                	test   %cl,%cl
54608c:	74 0d                	je     0x54609b
54608e:	80 f9 ff             	cmp    $0xff,%cl
546091:	74 08                	je     0x54609b
546093:	c7 44 24 0c 01 00 00 	movl   $0x1,0xc(%esp)
54609a:	00
54609b:	42                   	inc    %edx
54609c:	40                   	inc    %eax
54609d:	0f b7 8b da 00 00 00 	movzwl 0xda(%ebx),%ecx
5460a4:	3b d1                	cmp    %ecx,%edx
5460a6:	7c e0                	jl     0x546088
5460a8:	8b 44 24 0c          	mov    0xc(%esp),%eax
5460ac:	85 c0                	test   %eax,%eax
5460ae:	75 07                	jne    0x5460b7
5460b0:	81 63 30 ff df ff ff 	andl   $0xffffdfff,0x30(%ebx)
5460b7:	f7 43 30 00 20 60 00 	testl  $0x602000,0x30(%ebx)
5460be:	0f 84 d8 08 00 00    	je     0x54699c
5460c4:	8b c3                	mov    %ebx,%eax
5460c6:	e8 e9 43 00 00       	call   0x54a4b4
5460cb:	f6 43 30 80          	testb  $0x80,0x30(%ebx)
5460cf:	0f 84 5e 08 00 00    	je     0x546933
5460d5:	8b 14 24             	mov    (%esp),%edx
5460d8:	83 fa 03             	cmp    $0x3,%edx
5460db:	0f 85 05 05 00 00    	jne    0x5465e6
5460e1:	8b 8b d4 00 00 00    	mov    0xd4(%ebx),%ecx
5460e7:	89 4c 24 18          	mov    %ecx,0x18(%esp)
5460eb:	0f b7 83 d8 00 00 00 	movzwl 0xd8(%ebx),%eax
5460f2:	89 44 24 1c          	mov    %eax,0x1c(%esp)
5460f6:	8a 93 f0 00 00 00    	mov    0xf0(%ebx),%dl
5460fc:	80 fa 02             	cmp    $0x2,%dl
5460ff:	75 7d                	jne    0x54617e
546101:	0f b7 8b fa 00 00 00 	movzwl 0xfa(%ebx),%ecx
546108:	8b 83 24 01 00 00    	mov    0x124(%ebx),%eax
54610e:	8a 14 08             	mov    (%eax,%ecx,1),%dl
546111:	88 54 24 10          	mov    %dl,0x10(%esp)
546115:	0f b7 8b fc 00 00 00 	movzwl 0xfc(%ebx),%ecx
54611c:	8b 83 24 01 00 00    	mov    0x124(%ebx),%eax
546122:	8a 14 08             	mov    (%eax,%ecx,1),%dl
546125:	88 54 24 11          	mov    %dl,0x11(%esp)
546129:	0f b7 8b fe 00 00 00 	movzwl 0xfe(%ebx),%ecx
546130:	8b 83 24 01 00 00    	mov    0x124(%ebx),%eax
546136:	8a 14 08             	mov    (%eax,%ecx,1),%dl
546139:	88 54 24 12          	mov    %dl,0x12(%esp)
54613d:	0f b7 8b fa 00 00 00 	movzwl 0xfa(%ebx),%ecx
546144:	8b 83 2c 01 00 00    	mov    0x12c(%ebx),%eax
54614a:	8a 14 08             	mov    (%eax,%ecx,1),%dl
54614d:	88 54 24 13          	mov    %dl,0x13(%esp)
546151:	0f b7 8b fc 00 00 00 	movzwl 0xfc(%ebx),%ecx
546158:	8b 83 2c 01 00 00    	mov    0x12c(%ebx),%eax
54615e:	8a 14 08             	mov    (%eax,%ecx,1),%dl
546161:	88 54 24 14          	mov    %dl,0x14(%esp)
546165:	0f b7 8b fe 00 00 00 	movzwl 0xfe(%ebx),%ecx
54616c:	8b 83 2c 01 00 00    	mov    0x12c(%ebx),%eax
546172:	8a 14 08             	mov    (%eax,%ecx,1),%dl
546175:	88 54 24 15          	mov    %dl,0x15(%esp)
546179:	e9 78 02 00 00       	jmp    0x5463f6
54617e:	8a 8b f0 00 00 00    	mov    0xf0(%ebx),%cl
546184:	fe c9                	dec    %cl
546186:	74 0a                	je     0x546192
546188:	fe c9                	dec    %cl
54618a:	74 20                	je     0x5461ac
54618c:	fe c9                	dec    %cl
54618e:	74 44                	je     0x5461d4
546190:	eb 6a                	jmp    0x5461fc
546192:	d9 83 20 01 00 00    	flds   0x120(%ebx)
546198:	dd 5c 24 20          	fstpl  0x20(%esp)
54619c:	33 c0                	xor    %eax,%eax
54619e:	89 44 24 28          	mov    %eax,0x28(%esp)
5461a2:	c7 44 24 2c 00 00 f0 	movl   $0x3ff00000,0x2c(%esp)
5461a9:	3f
5461aa:	eb 6c                	jmp    0x546218
5461ac:	d9 05 10 6c 54 00    	flds   0x546c10
5461b2:	d8 b3 1c 01 00 00    	fdivs  0x11c(%ebx)
5461b8:	dd 5c 24 20          	fstpl  0x20(%esp)
5461bc:	d9 83 1c 01 00 00    	flds   0x11c(%ebx)
5461c2:	d8 8b 20 01 00 00    	fmuls  0x120(%ebx)
5461c8:	d8 3d 10 6c 54 00    	fdivrs 0x546c10
5461ce:	dd 5c 24 28          	fstpl  0x28(%esp)
5461d2:	eb 44                	jmp    0x546218
5461d4:	d9 05 10 6c 54 00    	flds   0x546c10
5461da:	d8 b3 f4 00 00 00    	fdivs  0xf4(%ebx)
5461e0:	dd 5c 24 20          	fstpl  0x20(%esp)
5461e4:	d9 83 f4 00 00 00    	flds   0xf4(%ebx)
5461ea:	d8 8b 20 01 00 00    	fmuls  0x120(%ebx)
5461f0:	d8 3d 10 6c 54 00    	fdivrs 0x546c10
5461f6:	dd 5c 24 28          	fstpl  0x28(%esp)
5461fa:	eb 1c                	jmp    0x546218
5461fc:	33 d2                	xor    %edx,%edx
5461fe:	33 c9                	xor    %ecx,%ecx
546200:	89 54 24 20          	mov    %edx,0x20(%esp)
546204:	c7 44 24 24 00 00 f0 	movl   $0x3ff00000,0x24(%esp)
54620b:	3f
54620c:	89 4c 24 28          	mov    %ecx,0x28(%esp)
546210:	c7 44 24 2c 00 00 f0 	movl   $0x3ff00000,0x2c(%esp)
546217:	3f
546218:	dd 44 24 28          	fldl   0x28(%esp)
54621c:	d8 25 10 6c 54 00    	fsubs  0x546c10
546222:	83 c4 f8             	add    $0xfffffff8,%esp
546225:	dd 1c 24             	fstpl  (%esp)
546228:	e8 e7 01 fe ff       	call   0x526414
54622d:	83 c4 08             	add    $0x8,%esp
546230:	dc 1d 14 6c 54 00    	fcompl 0x546c14
546236:	df e0                	fnstsw %ax
546238:	9e                   	sahf
546239:	73 23                	jae    0x54625e
54623b:	8a 93 fa 00 00 00    	mov    0xfa(%ebx),%dl
546241:	88 54 24 10          	mov    %dl,0x10(%esp)
546245:	8a 8b fc 00 00 00    	mov    0xfc(%ebx),%cl
54624b:	88 4c 24 11          	mov    %cl,0x11(%esp)
54624f:	8a 83 fe 00 00 00    	mov    0xfe(%ebx),%al
546255:	88 44 24 12          	mov    %al,0x12(%esp)
546259:	e9 c6 00 00 00       	jmp    0x546324
54625e:	ff 74 24 2c          	push   0x2c(%esp)
546262:	ff 74 24 2c          	push   0x2c(%esp)
546266:	0f b7 8b fa 00 00 00 	movzwl 0xfa(%ebx),%ecx
54626d:	89 4c 24 70          	mov    %ecx,0x70(%esp)
546271:	db 44 24 70          	fildl  0x70(%esp)
546275:	db 2d 1c 6c 54 00    	fldt   0x546c1c
54627b:	de c9                	fmulp  %st,%st(1)
54627d:	83 c4 f8             	add    $0xfffffff8,%esp
546280:	dd 1c 24             	fstpl  (%esp)
546283:	e8 d0 01 fe ff       	call   0x526458
546288:	83 c4 10             	add    $0x10,%esp
54628b:	d8 0d 28 6c 54 00    	fmuls  0x546c28
546291:	d8 05 2c 6c 54 00    	fadds  0x546c2c
546297:	e8 7c 02 fe ff       	call   0x526518
54629c:	88 44 24 10          	mov    %al,0x10(%esp)
5462a0:	ff 74 24 2c          	push   0x2c(%esp)
5462a4:	ff 74 24 2c          	push   0x2c(%esp)
5462a8:	0f b7 8b fc 00 00 00 	movzwl 0xfc(%ebx),%ecx
5462af:	89 4c 24 74          	mov    %ecx,0x74(%esp)
5462b3:	db 44 24 74          	fildl  0x74(%esp)
5462b7:	db 2d 1c 6c 54 00    	fldt   0x546c1c
5462bd:	de c9                	fmulp  %st,%st(1)
5462bf:	83 c4 f8             	add    $0xfffffff8,%esp
5462c2:	dd 1c 24             	fstpl  (%esp)
5462c5:	e8 8e 01 fe ff       	call   0x526458
5462ca:	83 c4 10             	add    $0x10,%esp
5462cd:	d8 0d 28 6c 54 00    	fmuls  0x546c28
5462d3:	d8 05 2c 6c 54 00    	fadds  0x546c2c
5462d9:	e8 3a 02 fe ff       	call   0x526518
5462de:	88 44 24 11          	mov    %al,0x11(%esp)
5462e2:	ff 74 24 2c          	push   0x2c(%esp)
5462e6:	ff 74 24 2c          	push   0x2c(%esp)
5462ea:	0f b7 8b fe 00 00 00 	movzwl 0xfe(%ebx),%ecx
5462f1:	89 4c 24 78          	mov    %ecx,0x78(%esp)
5462f5:	db 44 24 78          	fildl  0x78(%esp)
5462f9:	db 2d 1c 6c 54 00    	fldt   0x546c1c
5462ff:	de c9                	fmulp  %st,%st(1)
546301:	83 c4 f8             	add    $0xfffffff8,%esp
546304:	dd 1c 24             	fstpl  (%esp)
546307:	e8 4c 01 fe ff       	call   0x526458
54630c:	83 c4 10             	add    $0x10,%esp
54630f:	d8 0d 28 6c 54 00    	fmuls  0x546c28
546315:	d8 05 2c 6c 54 00    	fadds  0x546c2c
54631b:	e8 f8 01 fe ff       	call   0x526518
546320:	88 44 24 12          	mov    %al,0x12(%esp)
546324:	ff 74 24 24          	push   0x24(%esp)
546328:	ff 74 24 24          	push   0x24(%esp)
54632c:	0f b7 8b fa 00 00 00 	movzwl 0xfa(%ebx),%ecx