411169:	68 df 11 41 00       	push   $0x4111df
41116e:	64 ff 32             	push   %fs:(%edx)
411171:	64 89 22             	mov    %esp,%fs:(%edx)
411174:	8b d0                	mov    %eax,%edx
411176:	8d 45 f8             	lea    -0x8(%ebp),%eax
411179:	e8 ba 20 00 00       	call   0x413238
41117e:	8d 45 fc             	lea    -0x4(%ebp),%eax
411181:	50                   	push   %eax
411182:	6a 00                	push   $0x0
411184:	68 00 04 00 00       	push   $0x400
411189:	8d 45 f4             	lea    -0xc(%ebp),%eax
41118c:	8b 55 f8             	mov    -0x8(%ebp),%edx
41118f:	e8 5c 3f ff ff       	call   0x4050f0
411194:	8b 45 f4             	mov    -0xc(%ebp),%eax
411197:	50                   	push   %eax
411198:	e8 b3 df ff ff       	call   0x40f150
41119d:	8b d8                	mov    %eax,%ebx
41119f:	85 db                	test   %ebx,%ebx
4111a1:	74 1e                	je     0x4111c1
4111a3:	8d 55 fc             	lea    -0x4(%ebp),%edx
4111a6:	8b 45 f8             	mov    -0x8(%ebp),%eax
4111a9:	e8 4a 85 ff ff       	call   0x4096f8
4111ae:	84 c0                	test   %al,%al
4111b0:	75 0f                	jne    0x4111c1
4111b2:	66 b9 03 00          	mov    $0x3,%cx
4111b6:	66 ba 00 01          	mov    $0x100,%dx
4111ba:	8b c3                	mov    %ebx,%eax
4111bc:	e8 87 ea ff ff       	call   0x40fc48
4111c1:	33 c0                	xor    %eax,%eax
4111c3:	5a                   	pop    %edx
4111c4:	59                   	pop    %ecx
4111c5:	59                   	pop    %ecx
4111c6:	64 89 10             	mov    %edx,%fs:(%eax)
4111c9:	68 e6 11 41 00       	push   $0x4111e6
4111ce:	8d 45 f4             	lea    -0xc(%ebp),%eax
4111d1:	e8 b6 3d ff ff       	call   0x404f8c
4111d6:	8d 45 f8             	lea    -0x8(%ebp),%eax
4111d9:	e8 8a 36 ff ff       	call   0x404868
4111de:	c3                   	ret
4111df:	e9 28 30 ff ff       	jmp    0x40420c
4111e4:	eb e8                	jmp    0x4111ce
4111e6:	8b 45 fc             	mov    -0x4(%ebp),%eax
4111e9:	5b                   	pop    %ebx
4111ea:	8b e5                	mov    %ebp,%esp
4111ec:	5d                   	pop    %ebp
4111ed:	c3                   	ret
4111ee:	8b c0                	mov    %eax,%eax
4111f0:	53                   	push   %ebx
4111f1:	83 c4 f0             	add    $0xfffffff0,%esp
4111f4:	8b d8                	mov    %eax,%ebx
4111f6:	54                   	push   %esp
4111f7:	e8 1c df ff ff       	call   0x40f118
4111fc:	6a 03                	push   $0x3
4111fe:	6a 04                	push   $0x4
411200:	68 00 04 00 00       	push   $0x400
411205:	53                   	push   %ebx
411206:	8d 44 24 10          	lea    0x10(%esp),%eax
41120a:	50                   	push   %eax
41120b:	e8 28 df ff ff       	call   0x40f138
411210:	66 8b 13             	mov    (%ebx),%dx
411213:	66 b9 03 00          	mov    $0x3,%cx
411217:	e8 2c ea ff ff       	call   0x40fc48
41121c:	8b 44 24 08          	mov    0x8(%esp),%eax
411220:	83 c4 10             	add    $0x10,%esp
411223:	5b                   	pop    %ebx
411224:	c3                   	ret
411225:	8d 40 00             	lea    0x0(%eax),%eax
411228:	55                   	push   %ebp
411229:	8b ec                	mov    %esp,%ebp
41122b:	83 c4 ec             	add    $0xffffffec,%esp
41122e:	53                   	push   %ebx
41122f:	8b d8                	mov    %eax,%ebx
411231:	8d 45 ec             	lea    -0x14(%ebp),%eax
411234:	50                   	push   %eax
411235:	e8 de de ff ff       	call   0x40f118
41123a:	33 c0                	xor    %eax,%eax
41123c:	55                   	push   %ebp
41123d:	68 7c 12 41 00       	push   $0x41127c
411242:	64 ff 30             	push   %fs:(%eax)
411245:	64 89 20             	mov    %esp,%fs:(%eax)
411248:	8b d3                	mov    %ebx,%edx
41124a:	8d 45 ec             	lea    -0x14(%ebp),%eax
41124d:	e8 da f1 ff ff       	call   0x41042c
411252:	8d 45 ec             	lea    -0x14(%ebp),%eax
411255:	ff 15 70 88 6a 00    	call   *0x6a8870
41125b:	8d 45 ec             	lea    -0x14(%ebp),%eax
41125e:	e8 6d 00 00 00       	call   0x4112d0
411263:	89 45 fc             	mov    %eax,-0x4(%ebp)
411266:	33 c0                	xor    %eax,%eax
411268:	5a                   	pop    %edx
411269:	59                   	pop    %ecx
41126a:	59                   	pop    %ecx
41126b:	64 89 10             	mov    %edx,%fs:(%eax)
41126e:	68 83 12 41 00       	push   $0x411283
411273:	8d 45 ec             	lea    -0x14(%ebp),%eax
411276:	e8 6d ed ff ff       	call   0x40ffe8
41127b:	c3                   	ret
41127c:	e9 8b 2f ff ff       	jmp    0x40420c
411281:	eb f0                	jmp    0x411273
411283:	8b 45 fc             	mov    -0x4(%ebp),%eax
411286:	5b                   	pop    %ebx
411287:	8b e5                	mov    %ebp,%esp
411289:	5d                   	pop    %ebp
41128a:	c3                   	ret
41128b:	90                   	nop
41128c:	53                   	push   %ebx
41128d:	56                   	push   %esi
41128e:	57                   	push   %edi
41128f:	83 c4 ec             	add    $0xffffffec,%esp
411292:	8b fa                	mov    %edx,%edi
411294:	8b f0                	mov    %eax,%esi
411296:	8b d4                	mov    %esp,%edx
411298:	66 8b 06             	mov    (%esi),%ax
41129b:	e8 00 64 00 00       	call   0x4176a0
4112a0:	8b d8                	mov    %eax,%ebx
4112a2:	84 db                	test   %bl,%bl
4112a4:	74 21                	je     0x4112c7
4112a6:	8d 44 24 04          	lea    0x4(%esp),%eax
4112aa:	50                   	push   %eax
4112ab:	e8 68 de ff ff       	call   0x40f118
4112b0:	6a 03                	push   $0x3
4112b2:	8b ce                	mov    %esi,%ecx
4112b4:	8d 54 24 08          	lea    0x8(%esp),%edx
4112b8:	8b 44 24 04          	mov    0x4(%esp),%eax
4112bc:	8b 30                	mov    (%eax),%esi
4112be:	ff 56 1c             	call   *0x1c(%esi)
4112c1:	8b 44 24 0c          	mov    0xc(%esp),%eax
4112c5:	89 07                	mov    %eax,(%edi)
4112c7:	8b c3                	mov    %ebx,%eax
4112c9:	83 c4 14             	add    $0x14,%esp
4112cc:	5f                   	pop    %edi
4112cd:	5e                   	pop    %esi
4112ce:	5b                   	pop    %ebx
4112cf:	c3                   	ret
4112d0:	55                   	push   %ebp
4112d1:	8b ec                	mov    %esp,%ebp
4112d3:	83 c4 f8             	add    $0xfffffff8,%esp
4112d6:	53                   	push   %ebx
4112d7:	56                   	push   %esi
4112d8:	57                   	push   %edi
4112d9:	89 45 fc             	mov    %eax,-0x4(%ebp)
4112dc:	33 d2                	xor    %edx,%edx
4112de:	55                   	push   %ebp
4112df:	68 d1 16 41 00       	push   $0x4116d1
4112e4:	64 ff 32             	push   %fs:(%edx)
4112e7:	64 89 22             	mov    %esp,%fs:(%edx)
4112ea:	8b 45 fc             	mov    -0x4(%ebp),%eax
4112ed:	66 8b 00             	mov    (%eax),%ax
4112f0:	0f b7 d0             	movzwl %ax,%edx
4112f3:	83 fa 14             	cmp    $0x14,%edx
4112f6:	0f 87 b1 01 00 00    	ja     0x4114ad
4112fc:	ff 24 95 03 13 41 00 	jmp    *0x411303(,%edx,4)
411303:	57                   	push   %edi
411304:	13 41 00             	adc    0x0(%ecx),%eax
411307:	ad                   	lods   %ds:(%esi),%eax
411308:	14 41                	adc    $0x41,%al
41130a:	00 61 13             	add    %ah,0x13(%ecx)
41130d:	41                   	inc    %ecx
41130e:	00 70 13             	add    %dh,0x13(%eax)
411311:	41                   	inc    %ecx
411312:	00 7e 13             	add    %bh,0x13(%esi)
411315:	41                   	inc    %ecx
411316:	00 9f 13 41 00 c0    	add    %bl,-0x3fffbeed(%edi)
41131c:	13 41 00             	adc    0x0(%ecx),%eax
41131f:	e7 13                	out    %eax,$0x13
411321:	41                   	inc    %ecx
411322:	00 08                	add    %cl,(%eax)
411324:	14 41                	adc    $0x41,%al
411326:	00 9d 14 41 00 ad    	add    %bl,-0x52ffbeec(%ebp)
41132c:	14 41                	adc    $0x41,%al
41132e:	00 18                	add    %bl,(%eax)
411330:	14 41                	adc    $0x41,%al
411332:	00 8a 14 41 00 9d    	add    %cl,-0x62ffbeec(%edx)
411338:	14 41                	adc    $0x41,%al
41133a:	00 ad 14 41 00 ad    	add    %ch,-0x52ffbeec(%ebp)
411340:	14 41                	adc    $0x41,%al
411342:	00 27                	add    %ah,(%edi)
411344:	14 41                	adc    $0x41,%al
411346:	00 36                	add    %dh,(%esi)
411348:	14 41                	adc    $0x41,%al
41134a:	00 45 14             	add    %al,0x14(%ebp)
41134d:	41                   	inc    %ecx
41134e:	00 54 14 41          	add    %dl,0x41(%esp,%edx,1)
411352:	00 6b 14             	add    %ch,0x14(%ebx)
411355:	41                   	inc    %ecx
411356:	00 33                	add    %dh,(%ebx)
411358:	c0 89 45 f8 e9 66 03 	rorb   $0x3,0x66e9f845(%ecx)
41135f:	00 00                	add    %al,(%eax)
411361:	8b 45 fc             	mov    -0x4(%ebp),%eax
411364:	0f bf 40 08          	movswl 0x8(%eax),%eax
411368:	89 45 f8             	mov    %eax,-0x8(%ebp)
41136b:	e9 57 03 00 00       	jmp    0x4116c7
411370:	8b 45 fc             	mov    -0x4(%ebp),%eax
411373:	8b 40 08             	mov    0x8(%eax),%eax
411376:	89 45 f8             	mov    %eax,-0x8(%ebp)
411379:	e9 49 03 00 00       	jmp    0x4116c7
41137e:	8b 45 fc             	mov    -0x4(%ebp),%eax
411381:	d9 40 08             	flds   0x8(%eax)
411384:	e8 37 19 ff ff       	call   0x402cc0
411389:	50                   	push   %eax
41138a:	c1 f8 1f             	sar    $0x1f,%eax
41138d:	3b c2                	cmp    %edx,%eax
41138f:	58                   	pop    %eax
411390:	74 05                	je     0x411397
411392:	e8 21 26 ff ff       	call   0x4039b8
411397:	89 45 f8             	mov    %eax,-0x8(%ebp)
41139a:	e9 28 03 00 00       	jmp    0x4116c7
41139f:	8b 45 fc             	mov    -0x4(%ebp),%eax
4113a2:	dd 40 08             	fldl   0x8(%eax)
4113a5:	e8 16 19 ff ff       	call   0x402cc0
4113aa:	50                   	push   %eax
4113ab:	c1 f8 1f             	sar    $0x1f,%eax
4113ae:	3b c2                	cmp    %edx,%eax
4113b0:	58                   	pop    %eax
4113b1:	74 05                	je     0x4113b8
4113b3:	e8 00 26 ff ff       	call   0x4039b8
4113b8:	89 45 f8             	mov    %eax,-0x8(%ebp)
4113bb:	e9 07 03 00 00       	jmp    0x4116c7
4113c0:	8b 45 fc             	mov    -0x4(%ebp),%eax
4113c3:	df 68 08             	fildll 0x8(%eax)
4113c6:	d8 35 f4 16 41 00    	fdivs  0x4116f4
4113cc:	e8 ef 18 ff ff       	call   0x402cc0
4113d1:	50                   	push   %eax
4113d2:	c1 f8 1f             	sar    $0x1f,%eax
4113d5:	3b c2                	cmp    %edx,%eax
4113d7:	58                   	pop    %eax
4113d8:	74 05                	je     0x4113df
4113da:	e8 d9 25 ff ff       	call   0x4039b8
4113df:	89 45 f8             	mov    %eax,-0x8(%ebp)
4113e2:	e9 e0 02 00 00       	jmp    0x4116c7
4113e7:	8b 45 fc             	mov    -0x4(%ebp),%eax
4113ea:	dd 40 08             	fldl   0x8(%eax)
4113ed:	e8 ce 18 ff ff       	call   0x402cc0
4113f2:	50                   	push   %eax
4113f3:	c1 f8 1f             	sar    $0x1f,%eax
4113f6:	3b c2                	cmp    %edx,%eax
4113f8:	58                   	pop    %eax
4113f9:	74 05                	je     0x411400
4113fb:	e8 b8 25 ff ff       	call   0x4039b8
411400:	89 45 f8             	mov    %eax,-0x8(%ebp)
411403:	e9 bf 02 00 00       	jmp    0x4116c7
411408:	8b 45 fc             	mov    -0x4(%ebp),%eax
41140b:	e8 4c fd ff ff       	call   0x41115c
411410:	89 45 f8             	mov    %eax,-0x8(%ebp)
411413:	e9 af 02 00 00       	jmp    0x4116c7
411418:	8b 45 fc             	mov    -0x4(%ebp),%eax
41141b:	0f bf 40 08          	movswl 0x8(%eax),%eax
41141f:	89 45 f8             	mov    %eax,-0x8(%ebp)
411422:	e9 a0 02 00 00       	jmp    0x4116c7
411427:	8b 45 fc             	mov    -0x4(%ebp),%eax
41142a:	0f be 40 08          	movsbl 0x8(%eax),%eax
41142e:	89 45 f8             	mov    %eax,-0x8(%ebp)
411431:	e9 91 02 00 00       	jmp    0x4116c7
411436:	8b 45 fc             	mov    -0x4(%ebp),%eax
411439:	0f b6 40 08          	movzbl 0x8(%eax),%eax
41143d:	89 45 f8             	mov    %eax,-0x8(%ebp)
411440:	e9 82 02 00 00       	jmp    0x4116c7
411445:	8b 45 fc             	mov    -0x4(%ebp),%eax
411448:	0f b7 40 08          	movzwl 0x8(%eax),%eax
41144c:	89 45 f8             	mov    %eax,-0x8(%ebp)
41144f:	e9 73 02 00 00       	jmp    0x4116c7
411454:	8b 45 fc             	mov    -0x4(%ebp),%eax
411457:	8b 40 08             	mov    0x8(%eax),%eax
41145a:	85 c0                	test   %eax,%eax
41145c:	79 05                	jns    0x411463
41145e:	e8 55 25 ff ff       	call   0x4039b8
411463:	89 45 f8             	mov    %eax,-0x8(%ebp)
411466:	e9 5c 02 00 00       	jmp    0x4116c7
41146b:	8b 45 fc             	mov    -0x4(%ebp),%eax
41146e:	8b 50 0c             	mov    0xc(%eax),%edx
411471:	8b 40 08             	mov    0x8(%eax),%eax
411474:	50                   	push   %eax
411475:	c1 f8 1f             	sar    $0x1f,%eax
411478:	3b c2                	cmp    %edx,%eax
41147a:	58                   	pop    %eax
41147b:	74 05                	je     0x411482
41147d:	e8 36 25 ff ff       	call   0x4039b8
411482:	89 45 f8             	mov    %eax,-0x8(%ebp)
411485:	e9 3d 02 00 00       	jmp    0x4116c7
41148a:	8b 45 fc             	mov    -0x4(%ebp),%eax
41148d:	8b 40 08             	mov    0x8(%eax),%eax
411490:	e8 3b fe ff ff       	call   0x4112d0
411495:	89 45 f8             	mov    %eax,-0x8(%ebp)
411498:	e9 2a 02 00 00       	jmp    0x4116c7
41149d:	8b 45 fc             	mov    -0x4(%ebp),%eax
4114a0:	e8 4b fd ff ff       	call   0x4111f0
4114a5:	89 45 f8             	mov    %eax,-0x8(%ebp)
4114a8:	e9 1a 02 00 00       	jmp    0x4116c7
4114ad:	8b 55 fc             	mov    -0x4(%ebp),%edx
4114b0:	8b d0                	mov    %eax,%edx
4114b2:	66 81 ea 00 01       	sub    $0x100,%dx
4114b7:	74 07                	je     0x4114c0
4114b9:	66 ff ca             	dec    %dx
4114bc:	74 12                	je     0x4114d0
4114be:	eb 20                	jmp    0x4114e0
4114c0:	8b 45 fc             	mov    -0x4(%ebp),%eax
4114c3:	e8 94 fc ff ff       	call   0x41115c
4114c8:	89 45 f8             	mov    %eax,-0x8(%ebp)
4114cb:	e9 f7 01 00 00       	jmp    0x4116c7
4114d0:	8b 45 fc             	mov    -0x4(%ebp),%eax
4114d3:	e8 50 fd ff ff       	call   0x411228
4114d8:	89 45 f8             	mov    %eax,-0x8(%ebp)
4114db:	e9 e7 01 00 00       	jmp    0x4116c7
4114e0:	8b 55 fc             	mov    -0x4(%ebp),%edx
4114e3:	f6 c4 40             	test   $0x40,%ah
4114e6:	0f 84 c1 01 00 00    	je     0x4116ad
4114ec:	8b 55 fc             	mov    -0x4(%ebp),%edx
4114ef:	0f b7 c0             	movzwl %ax,%eax
4114f2:	25 ff bf ff ff       	and    $0xffffbfff,%eax
4114f7:	83 f8 14             	cmp    $0x14,%eax
4114fa:	0f 87 a0 01 00 00    	ja     0x4116a0
411500:	ff 24 85 07 15 41 00 	jmp    *0x411507(,%eax,4)
411507:	a0 16 41 00 a0       	mov    0xa0004116,%al
41150c:	16                   	push   %ss
41150d:	41                   	inc    %ecx
41150e:	00 5b 15             	add    %bl,0x15(%ebx)
411511:	41                   	inc    %ecx
411512:	00 6c 15 41          	add    %ch,0x41(%ebp,%edx,1)
411516:	00 7c 15 41          	add    %bh,0x41(%ebp,%edx,1)
41151a:	00 9f 15 41 00 c2    	add    %bl,-0x3dffbeeb(%edi)
411520:	15 41 00 eb 15       	adc    $0x15eb0041,%eax
411525:	41                   	inc    %ecx
411526:	00 0e                	add    %cl,(%esi)
411528:	16                   	push   %ss
411529:	41                   	inc    %ecx
41152a:	00 a0 16 41 00 a0    	add    %ah,-0x5fffbeea(%eax)
411530:	16                   	push   %ss
411531:	41                   	inc    %ecx
411532:	00 1e                	add    %bl,(%esi)
411534:	16                   	push   %ss
411535:	41                   	inc    %ecx
411536:	00 90 16 41 00 a0    	add    %dl,-0x5fffbeea(%eax)
41153c:	16                   	push   %ss
41153d:	41                   	inc    %ecx
41153e:	00 a0 16 41 00 a0    	add    %ah,-0x5fffbeea(%eax)
411544:	16                   	push   %ss
411545:	41                   	inc    %ecx
411546:	00 2f                	add    %ch,(%edi)
411548:	16                   	push   %ss
411549:	41                   	inc    %ecx
41154a:	00 40 16             	add    %al,0x16(%eax)
41154d:	41                   	inc    %ecx
41154e:	00 4e 16             	add    %cl,0x16(%esi)
411551:	41                   	inc    %ecx
411552:	00 5c 16 41          	add    %bl,0x41(%esi,%edx,1)
411556:	00 72 16             	add    %dh,0x16(%edx)
411559:	41                   	inc    %ecx
41155a:	00 8b 45 fc 8b 40    	add    %cl,0x408bfc45(%ebx)
411560:	08 0f                	or     %cl,(%edi)
411562:	bf 00 89 45 f8       	mov    $0xf8458900,%edi