409f68:	d9 1c 24             	fstps  (%esp)
409f6b:	53                   	push   %ebx
409f6c:	ff 92 84 00 00 00    	call   *0x84(%edx)
409f72:	db e2                	fnclex
409f74:	85 c0                	test   %eax,%eax
409f76:	7d 12                	jge    0x409f8a
409f78:	68 84 00 00 00       	push   $0x84
409f7d:	68 ec 5e 40 00       	push   $0x405eec
409f82:	53                   	push   %ebx
409f83:	50                   	push   %eax
409f84:	ff 15 58 10 40 00    	call   *0x401058
409f8a:	9b                   	fwait
409f8b:	68 fa 9f 40 00       	push   $0x409ffa
409f90:	eb 55                	jmp    0x409fe7
409f92:	8d 45 d0             	lea    -0x30(%ebp),%eax
409f95:	50                   	push   %eax
409f96:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
409f99:	51                   	push   %ecx
409f9a:	8d 55 d8             	lea    -0x28(%ebp),%edx
409f9d:	52                   	push   %edx
409f9e:	8d 45 dc             	lea    -0x24(%ebp),%eax
409fa1:	50                   	push   %eax
409fa2:	6a 04                	push   $0x4
409fa4:	ff 15 78 11 40 00    	call   *0x401178
409faa:	83 c4 14             	add    $0x14,%esp
409fad:	8d 4d cc             	lea    -0x34(%ebp),%ecx
409fb0:	ff 15 d0 11 40 00    	call   *0x4011d0
409fb6:	8d 8d 5c ff ff ff    	lea    -0xa4(%ebp),%ecx
409fbc:	51                   	push   %ecx
409fbd:	8d 95 6c ff ff ff    	lea    -0x94(%ebp),%edx
409fc3:	52                   	push   %edx
409fc4:	8d 85 7c ff ff ff    	lea    -0x84(%ebp),%eax
409fca:	50                   	push   %eax
409fcb:	8d 4d 8c             	lea    -0x74(%ebp),%ecx
409fce:	51                   	push   %ecx
409fcf:	8d 55 9c             	lea    -0x64(%ebp),%edx
409fd2:	52                   	push   %edx
409fd3:	8d 45 ac             	lea    -0x54(%ebp),%eax
409fd6:	50                   	push   %eax
409fd7:	8d 4d bc             	lea    -0x44(%ebp),%ecx
409fda:	51                   	push   %ecx
409fdb:	6a 07                	push   $0x7
409fdd:	ff 15 28 10 40 00    	call   *0x401028
409fe3:	83 c4 20             	add    $0x20,%esp
409fe6:	c3                   	ret
409fe7:	8d 4d e8             	lea    -0x18(%ebp),%ecx
409fea:	ff 15 cc 11 40 00    	call   *0x4011cc
409ff0:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
409ff3:	ff 15 d0 11 40 00    	call   *0x4011d0
409ff9:	c3                   	ret
409ffa:	8b 45 08             	mov    0x8(%ebp),%eax
409ffd:	8b 10                	mov    (%eax),%edx
409fff:	50                   	push   %eax
40a000:	ff 52 08             	call   *0x8(%edx)
40a003:	8b 45 14             	mov    0x14(%ebp),%eax
40a006:	66 8b 4d e0          	mov    -0x20(%ebp),%cx
40a00a:	66 89 08             	mov    %cx,(%eax)
40a00d:	8b 45 fc             	mov    -0x4(%ebp),%eax
40a010:	8b 4d ec             	mov    -0x14(%ebp),%ecx
40a013:	5f                   	pop    %edi
40a014:	5e                   	pop    %esi
40a015:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
40a01c:	5b                   	pop    %ebx
40a01d:	8b e5                	mov    %ebp,%esp
40a01f:	5d                   	pop    %ebp
40a020:	c2 10 00             	ret    $0x10
40a023:	e9 04 73 ff ff       	jmp    0x40132c
40a028:	90                   	nop
40a029:	90                   	nop
40a02a:	90                   	nop
40a02b:	90                   	nop
40a02c:	90                   	nop
40a02d:	90                   	nop
40a02e:	90                   	nop
40a02f:	90                   	nop
40a030:	55                   	push   %ebp
40a031:	8b ec                	mov    %esp,%ebp
40a033:	83 ec 08             	sub    $0x8,%esp
40a036:	68 26 13 40 00       	push   $0x401326
40a03b:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
40a041:	50                   	push   %eax
40a042:	64 89 25 00 00 00 00 	mov    %esp,%fs:0x0
40a049:	83 ec 54             	sub    $0x54,%esp
40a04c:	53                   	push   %ebx
40a04d:	56                   	push   %esi
40a04e:	57                   	push   %edi
40a04f:	89 65 f8             	mov    %esp,-0x8(%ebp)
40a052:	c7 45 fc e0 12 40 00 	movl   $0x4012e0,-0x4(%ebp)
40a059:	33 db                	xor    %ebx,%ebx
40a05b:	53                   	push   %ebx
40a05c:	8d 45 cc             	lea    -0x34(%ebp),%eax
40a05f:	50                   	push   %eax
40a060:	89 5d ec             	mov    %ebx,-0x14(%ebp)
40a063:	89 5d e8             	mov    %ebx,-0x18(%ebp)
40a066:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
40a069:	89 5d e0             	mov    %ebx,-0x20(%ebp)
40a06c:	89 5d dc             	mov    %ebx,-0x24(%ebp)
40a06f:	c7 45 d4 01 00 00 00 	movl   $0x1,-0x2c(%ebp)
40a076:	c7 45 cc 02 00 00 00 	movl   $0x2,-0x34(%ebp)
40a07d:	ff 15 a0 10 40 00    	call   *0x4010a0
40a083:	8b 35 b0 11 40 00    	mov    0x4011b0,%esi
40a089:	8b d0                	mov    %eax,%edx
40a08b:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
40a08e:	ff d6                	call   *%esi
40a090:	8b 3d 1c 10 40 00    	mov    0x40101c,%edi
40a096:	8d 4d cc             	lea    -0x34(%ebp),%ecx
40a099:	ff d7                	call   *%edi
40a09b:	8d 4d cc             	lea    -0x34(%ebp),%ecx
40a09e:	51                   	push   %ecx
40a09f:	c7 45 d4 04 00 02 80 	movl   $0x80020004,-0x2c(%ebp)
40a0a6:	c7 45 cc 0a 00 00 00 	movl   $0xa,-0x34(%ebp)
40a0ad:	ff 15 48 11 40 00    	call   *0x401148
40a0b3:	8b d0                	mov    %eax,%edx
40a0b5:	8d 4d e0             	lea    -0x20(%ebp),%ecx
40a0b8:	ff d6                	call   *%esi
40a0ba:	50                   	push   %eax
40a0bb:	68 60 68 40 00       	push   $0x406860
40a0c0:	ff 15 d4 10 40 00    	call   *0x4010d4
40a0c6:	8b f0                	mov    %eax,%esi
40a0c8:	f7 de                	neg    %esi
40a0ca:	1b f6                	sbb    %esi,%esi
40a0cc:	46                   	inc    %esi
40a0cd:	8d 4d e0             	lea    -0x20(%ebp),%ecx
40a0d0:	f7 de                	neg    %esi
40a0d2:	ff 15 cc 11 40 00    	call   *0x4011cc
40a0d8:	8d 4d cc             	lea    -0x34(%ebp),%ecx
40a0db:	ff d7                	call   *%edi
40a0dd:	66 3b f3             	cmp    %bx,%si
40a0e0:	8b 75 08             	mov    0x8(%ebp),%esi
40a0e3:	74 3f                	je     0x40a124
40a0e5:	dd 05 d8 12 40 00    	fldl   0x4012d8
40a0eb:	8b 16                	mov    (%esi),%edx
40a0ed:	df e0                	fnstsw %ax
40a0ef:	a8 0d                	test   $0xd,%al
40a0f1:	0f 85 ec 01 00 00    	jne    0x40a2e3
40a0f7:	d9 5d 9c             	fstps  -0x64(%ebp)
40a0fa:	d9 45 9c             	flds   -0x64(%ebp)
40a0fd:	51                   	push   %ecx
40a0fe:	d9 1c 24             	fstps  (%esp)
40a101:	56                   	push   %esi
40a102:	ff 92 84 00 00 00    	call   *0x84(%edx)
40a108:	db e2                	fnclex
40a10a:	3b c3                	cmp    %ebx,%eax
40a10c:	7d 16                	jge    0x40a124
40a10e:	8b 3d 58 10 40 00    	mov    0x401058,%edi
40a114:	68 84 00 00 00       	push   $0x84
40a119:	68 ec 5e 40 00       	push   $0x405eec
40a11e:	56                   	push   %esi
40a11f:	50                   	push   %eax
40a120:	ff d7                	call   *%edi
40a122:	eb 06                	jmp    0x40a12a
40a124:	8b 3d 58 10 40 00    	mov    0x401058,%edi
40a12a:	53                   	push   %ebx
40a12b:	53                   	push   %ebx
40a12c:	ff 15 04 10 40 00    	call   *0x401004
40a132:	ff 15 a8 10 40 00    	call   *0x4010a8
40a138:	dc 1d f0 11 40 00    	fcompl 0x4011f0
40a13e:	df e0                	fnstsw %ax
40a140:	f6 c4 40             	test   $0x40,%ah
40a143:	75 26                	jne    0x40a16b
40a145:	dd 05 d0 12 40 00    	fldl   0x4012d0
40a14b:	8b 1e                	mov    (%esi),%ebx
40a14d:	ff 15 a0 11 40 00    	call   *0x4011a0
40a153:	50                   	push   %eax
40a154:	56                   	push   %esi
40a155:	ff 53 64             	call   *0x64(%ebx)
40a158:	db e2                	fnclex
40a15a:	85 c0                	test   %eax,%eax
40a15c:	7d 0b                	jge    0x40a169
40a15e:	6a 64                	push   $0x64
40a160:	68 ec 5e 40 00       	push   $0x405eec
40a165:	56                   	push   %esi
40a166:	50                   	push   %eax
40a167:	ff d7                	call   *%edi
40a169:	33 db                	xor    %ebx,%ebx
40a16b:	39 1d 38 b3 40 00    	cmp    %ebx,0x40b338
40a171:	75 10                	jne    0x40a183
40a173:	68 38 b3 40 00       	push   $0x40b338
40a178:	68 c4 60 40 00       	push   $0x4060c4
40a17d:	ff 15 4c 11 40 00    	call   *0x40114c
40a183:	8b 35 38 b3 40 00    	mov    0x40b338,%esi
40a189:	8b 06                	mov    (%esi),%eax
40a18b:	8d 4d dc             	lea    -0x24(%ebp),%ecx
40a18e:	51                   	push   %ecx
40a18f:	56                   	push   %esi
40a190:	ff 50 14             	call   *0x14(%eax)
40a193:	db e2                	fnclex
40a195:	3b c3                	cmp    %ebx,%eax
40a197:	7d 0b                	jge    0x40a1a4
40a199:	6a 14                	push   $0x14
40a19b:	68 b4 60 40 00       	push   $0x4060b4
40a1a0:	56                   	push   %esi
40a1a1:	50                   	push   %eax
40a1a2:	ff d7                	call   *%edi
40a1a4:	8b 45 dc             	mov    -0x24(%ebp),%eax
40a1a7:	8b 10                	mov    (%eax),%edx
40a1a9:	8d 4d e0             	lea    -0x20(%ebp),%ecx
40a1ac:	51                   	push   %ecx
40a1ad:	50                   	push   %eax
40a1ae:	8b f0                	mov    %eax,%esi
40a1b0:	ff 92 f8 00 00 00    	call   *0xf8(%edx)
40a1b6:	db e2                	fnclex
40a1b8:	3b c3                	cmp    %ebx,%eax
40a1ba:	7d 0e                	jge    0x40a1ca
40a1bc:	68 f8 00 00 00       	push   $0xf8
40a1c1:	68 d4 60 40 00       	push   $0x4060d4
40a1c6:	56                   	push   %esi
40a1c7:	50                   	push   %eax
40a1c8:	ff d7                	call   *%edi
40a1ca:	8b 55 e0             	mov    -0x20(%ebp),%edx
40a1cd:	8d 4d ec             	lea    -0x14(%ebp),%ecx
40a1d0:	89 5d e0             	mov    %ebx,-0x20(%ebp)
40a1d3:	ff 15 b0 11 40 00    	call   *0x4011b0
40a1d9:	8b 1d d0 11 40 00    	mov    0x4011d0,%ebx
40a1df:	8d 4d dc             	lea    -0x24(%ebp),%ecx
40a1e2:	ff d3                	call   *%ebx
40a1e4:	6a 00                	push   $0x0
40a1e6:	6a 00                	push   $0x0
40a1e8:	ff 15 18 10 40 00    	call   *0x401018
40a1ee:	ff 15 a8 10 40 00    	call   *0x4010a8
40a1f4:	dc 1d c8 12 40 00    	fcompl 0x4012c8
40a1fa:	df e0                	fnstsw %ax
40a1fc:	f6 c4 40             	test   $0x40,%ah
40a1ff:	0f 84 8a 00 00 00    	je     0x40a28f
40a205:	a1 38 b3 40 00       	mov    0x40b338,%eax
40a20a:	85 c0                	test   %eax,%eax
40a20c:	75 10                	jne    0x40a21e
40a20e:	68 38 b3 40 00       	push   $0x40b338
40a213:	68 c4 60 40 00       	push   $0x4060c4
40a218:	ff 15 4c 11 40 00    	call   *0x40114c
40a21e:	8b 35 38 b3 40 00    	mov    0x40b338,%esi
40a224:	8b 16                	mov    (%esi),%edx
40a226:	8d 45 dc             	lea    -0x24(%ebp),%eax
40a229:	50                   	push   %eax
40a22a:	56                   	push   %esi
40a22b:	ff 52 14             	call   *0x14(%edx)
40a22e:	db e2                	fnclex
40a230:	85 c0                	test   %eax,%eax
40a232:	7d 0b                	jge    0x40a23f
40a234:	6a 14                	push   $0x14
40a236:	68 b4 60 40 00       	push   $0x4060b4
40a23b:	56                   	push   %esi
40a23c:	50                   	push   %eax
40a23d:	ff d7                	call   *%edi
40a23f:	8b 45 dc             	mov    -0x24(%ebp),%eax
40a242:	8b 08                	mov    (%eax),%ecx
40a244:	8d 55 e0             	lea    -0x20(%ebp),%edx
40a247:	52                   	push   %edx
40a248:	50                   	push   %eax
40a249:	8b f0                	mov    %eax,%esi
40a24b:	ff 51 50             	call   *0x50(%ecx)
40a24e:	db e2                	fnclex
40a250:	85 c0                	test   %eax,%eax
40a252:	7d 0b                	jge    0x40a25f
40a254:	6a 50                	push   $0x50
40a256:	68 d4 60 40 00       	push   $0x4060d4
40a25b:	56                   	push   %esi
40a25c:	50                   	push   %eax
40a25d:	ff d7                	call   *%edi
40a25f:	8b 45 e0             	mov    -0x20(%ebp),%eax
40a262:	50                   	push   %eax
40a263:	6a 00                	push   $0x0
40a265:	ff 15 d4 10 40 00    	call   *0x4010d4
40a26b:	8b f0                	mov    %eax,%esi
40a26d:	f7 de                	neg    %esi
40a26f:	1b f6                	sbb    %esi,%esi
40a271:	46                   	inc    %esi
40a272:	8d 4d e0             	lea    -0x20(%ebp),%ecx
40a275:	f7 de                	neg    %esi
40a277:	ff 15 cc 11 40 00    	call   *0x4011cc
40a27d:	8d 4d dc             	lea    -0x24(%ebp),%ecx
40a280:	ff d3                	call   *%ebx
40a282:	66 85 f6             	test   %si,%si
40a285:	74 08                	je     0x40a28f
40a287:	6a 2e                	push   $0x2e
40a289:	ff 15 58 11 40 00    	call   *0x401158
40a28f:	9b                   	fwait
40a290:	68 c4 a2 40 00       	push   $0x40a2c4
40a295:	eb 1c                	jmp    0x40a2b3
40a297:	8d 4d e0             	lea    -0x20(%ebp),%ecx
40a29a:	ff 15 cc 11 40 00    	call   *0x4011cc
40a2a0:	8d 4d dc             	lea    -0x24(%ebp),%ecx
40a2a3:	ff 15 d0 11 40 00    	call   *0x4011d0
40a2a9:	8d 4d cc             	lea    -0x34(%ebp),%ecx
40a2ac:	ff 15 1c 10 40 00    	call   *0x40101c
40a2b2:	c3                   	ret
40a2b3:	8b 35 cc 11 40 00    	mov    0x4011cc,%esi
40a2b9:	8d 4d ec             	lea    -0x14(%ebp),%ecx
40a2bc:	ff d6                	call   *%esi
40a2be:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
40a2c1:	ff d6                	call   *%esi
40a2c3:	c3                   	ret
40a2c4:	8b 4d 1c             	mov    0x1c(%ebp),%ecx
40a2c7:	66 8b 55 e8          	mov    -0x18(%ebp),%dx
40a2cb:	5f                   	pop    %edi
40a2cc:	66 89 11             	mov    %dx,(%ecx)
40a2cf:	8b 4d f0             	mov    -0x10(%ebp),%ecx
40a2d2:	5e                   	pop    %esi
40a2d3:	33 c0                	xor    %eax,%eax
40a2d5:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
40a2dc:	5b                   	pop    %ebx
40a2dd:	8b e5                	mov    %ebp,%esp
40a2df:	5d                   	pop    %ebp
40a2e0:	c2 18 00             	ret    $0x18
40a2e3:	e9 44 70 ff ff       	jmp    0x40132c
40a2e8:	90                   	nop
40a2e9:	90                   	nop
40a2ea:	90                   	nop
40a2eb:	90                   	nop
40a2ec:	90                   	nop
40a2ed:	90                   	nop
40a2ee:	90                   	nop
40a2ef:	90                   	nop
40a2f0:	55                   	push   %ebp
40a2f1:	8b ec                	mov    %esp,%ebp
40a2f3:	83 ec 08             	sub    $0x8,%esp
40a2f6:	68 26 13 40 00       	push   $0x401326
40a2fb:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
40a301:	50                   	push   %eax
40a302:	64 89 25 00 00 00 00 	mov    %esp,%fs:0x0
40a309:	81 ec d4 00 00 00    	sub    $0xd4,%esp
40a30f:	53                   	push   %ebx
40a310:	56                   	push   %esi
40a311:	57                   	push   %edi
40a312:	89 65 f8             	mov    %esp,-0x8(%ebp)
40a315:	c7 45 fc f8 12 40 00 	movl   $0x4012f8,-0x4(%ebp)
40a31c:	33 f6                	xor    %esi,%esi
40a31e:	6a 08                	push   $0x8
40a320:	68 cc 68 40 00       	push   $0x4068cc
40a325:	8d 45 d4             	lea    -0x2c(%ebp),%eax
40a328:	50                   	push   %eax
40a329:	89 75 c8             	mov    %esi,-0x38(%ebp)
40a32c:	89 75 cc             	mov    %esi,-0x34(%ebp)
40a32f:	89 75 c4             	mov    %esi,-0x3c(%ebp)
40a332:	89 75 c0             	mov    %esi,-0x40(%ebp)
40a335:	89 75 bc             	mov    %esi,-0x44(%ebp)
40a338:	89 75 b8             	mov    %esi,-0x48(%ebp)
40a33b:	89 75 b4             	mov    %esi,-0x4c(%ebp)
40a33e:	89 75 a4             	mov    %esi,-0x5c(%ebp)
40a341:	89 75 94             	mov    %esi,-0x6c(%ebp)
40a344:	89 75 90             	mov    %esi,-0x70(%ebp)
40a347:	89 75 80             	mov    %esi,-0x80(%ebp)
40a34a:	89 b5 70 ff ff ff    	mov    %esi,-0x90(%ebp)
40a350:	89 b5 60 ff ff ff    	mov    %esi,-0xa0(%ebp)
40a356:	89 b5 50 ff ff ff    	mov    %esi,-0xb0(%ebp)
40a35c:	89 b5 40 ff ff ff    	mov    %esi,-0xc0(%ebp)
40a362:	89 b5 3c ff ff ff    	mov    %esi,-0xc4(%ebp)
40a368:	89 b5 38 ff ff ff    	mov    %esi,-0xc8(%ebp)
40a36e:	89 b5 34 ff ff ff    	mov    %esi,-0xcc(%ebp)
40a374:	ff 15 d8 10 40 00    	call   *0x4010d8