4100ba:	e8 bd 0c 00 00       	call   0x410d7c
4100bf:	52                   	push   %edx
4100c0:	50                   	push   %eax
4100c1:	8b c6                	mov    %esi,%eax
4100c3:	e8 90 3a 00 00       	call   0x413b58
4100c8:	eb 44                	jmp    0x41010e
4100ca:	8b d3                	mov    %ebx,%edx
4100cc:	8b c6                	mov    %esi,%eax
4100ce:	e8 91 fc ff ff       	call   0x40fd64
4100d3:	eb 39                	jmp    0x41010e
4100d5:	8b d3                	mov    %ebx,%edx
4100d7:	8b c6                	mov    %esi,%eax
4100d9:	e8 d2 fc ff ff       	call   0x40fdb0
4100de:	eb 2e                	jmp    0x41010e
4100e0:	8b d1                	mov    %ecx,%edx
4100e2:	81 ea 00 01 00 00    	sub    $0x100,%edx
4100e8:	74 05                	je     0x4100ef
4100ea:	4a                   	dec    %edx
4100eb:	74 0d                	je     0x4100fa
4100ed:	eb 16                	jmp    0x410105
4100ef:	8b d3                	mov    %ebx,%edx
4100f1:	8b c6                	mov    %esi,%eax
4100f3:	e8 20 fc ff ff       	call   0x40fd18
4100f8:	eb 14                	jmp    0x41010e
4100fa:	66 ba 01 01          	mov    $0x101,%dx
4100fe:	e8 0d f0 ff ff       	call   0x40f110
410103:	eb 09                	jmp    0x41010e
410105:	8b d3                	mov    %ebx,%edx
410107:	8b c6                	mov    %esi,%eax
410109:	e8 6e fd ff ff       	call   0x40fe7c
41010e:	5e                   	pop    %esi
41010f:	5b                   	pop    %ebx
410110:	c3                   	ret
410111:	8d 40 00             	lea    0x0(%eax),%eax
410114:	55                   	push   %ebp
410115:	8b ec                	mov    %esp,%ebp
410117:	6a 00                	push   $0x0
410119:	6a 00                	push   $0x0
41011b:	6a 00                	push   $0x0
41011d:	53                   	push   %ebx
41011e:	8b d8                	mov    %eax,%ebx
410120:	33 c0                	xor    %eax,%eax
410122:	55                   	push   %ebp
410123:	68 b7 01 41 00       	push   $0x4101b7
410128:	64 ff 30             	push   %fs:(%eax)
41012b:	64 89 20             	mov    %esp,%fs:(%eax)
41012e:	8b d3                	mov    %ebx,%edx
410130:	8d 45 fc             	lea    -0x4(%ebp),%eax
410133:	e8 e0 31 00 00       	call   0x413318
410138:	8d 45 f8             	lea    -0x8(%ebp),%eax
41013b:	50                   	push   %eax
41013c:	6a 00                	push   $0x0
41013e:	68 00 04 00 00       	push   $0x400
410143:	8b 45 fc             	mov    -0x4(%ebp),%eax
410146:	50                   	push   %eax
410147:	a1 c0 d7 46 00       	mov    0x46d7c0,%eax
41014c:	8b 00                	mov    (%eax),%eax
41014e:	ff d0                	call   *%eax
410150:	8b d0                	mov    %eax,%edx
410152:	81 ea 05 00 02 80    	sub    $0x80020005,%edx
410158:	74 0a                	je     0x410164
41015a:	81 ea fb ff fd 7f    	sub    $0x7ffdfffb,%edx
410160:	75 2b                	jne    0x41018d
410162:	eb 35                	jmp    0x410199
410164:	8d 45 f4             	lea    -0xc(%ebp),%eax
410167:	8b 55 fc             	mov    -0x4(%ebp),%edx
41016a:	e8 39 48 ff ff       	call   0x4049a8
41016f:	8b 45 f4             	mov    -0xc(%ebp),%eax
410172:	8d 55 f8             	lea    -0x8(%ebp),%edx
410175:	e8 5a 8b ff ff       	call   0x408cd4
41017a:	84 c0                	test   %al,%al
41017c:	75 1b                	jne    0x410199
41017e:	8b c3                	mov    %ebx,%eax
410180:	e8 ef 11 00 00       	call   0x411374
410185:	83 e0 7f             	and    $0x7f,%eax
410188:	89 45 f8             	mov    %eax,-0x8(%ebp)
41018b:	eb 0c                	jmp    0x410199
41018d:	0f b7 13             	movzwl (%ebx),%edx
410190:	66 b9 03 00          	mov    $0x3,%cx
410194:	e8 b7 f3 ff ff       	call   0x40f550
410199:	33 c0                	xor    %eax,%eax
41019b:	5a                   	pop    %edx
41019c:	59                   	pop    %ecx
41019d:	59                   	pop    %ecx
41019e:	64 89 10             	mov    %edx,%fs:(%eax)
4101a1:	68 be 01 41 00       	push   $0x4101be
4101a6:	8d 45 f4             	lea    -0xc(%ebp),%eax
4101a9:	e8 72 45 ff ff       	call   0x404720
4101ae:	8d 45 fc             	lea    -0x4(%ebp),%eax
4101b1:	e8 4a 4d ff ff       	call   0x404f00
4101b6:	c3                   	ret
4101b7:	e9 cc 3e ff ff       	jmp    0x404088
4101bc:	eb e8                	jmp    0x4101a6
4101be:	8b 45 f8             	mov    -0x8(%ebp),%eax
4101c1:	5b                   	pop    %ebx
4101c2:	8b e5                	mov    %ebp,%esp
4101c4:	5d                   	pop    %ebp
4101c5:	c3                   	ret
4101c6:	8b c0                	mov    %eax,%eax
4101c8:	53                   	push   %ebx
4101c9:	83 c4 f0             	add    $0xfffffff0,%esp
4101cc:	8b d8                	mov    %eax,%ebx
4101ce:	54                   	push   %esp
4101cf:	e8 20 e1 ff ff       	call   0x40e2f4
4101d4:	6a 03                	push   $0x3
4101d6:	6a 00                	push   $0x0
4101d8:	68 00 04 00 00       	push   $0x400
4101dd:	53                   	push   %ebx
4101de:	8d 44 24 10          	lea    0x10(%esp),%eax
4101e2:	50                   	push   %eax
4101e3:	a1 10 d7 46 00       	mov    0x46d710,%eax
4101e8:	8b 00                	mov    (%eax),%eax
4101ea:	ff d0                	call   *%eax
4101ec:	0f b7 13             	movzwl (%ebx),%edx
4101ef:	66 b9 03 00          	mov    $0x3,%cx
4101f3:	e8 58 f3 ff ff       	call   0x40f550
4101f8:	8b 44 24 08          	mov    0x8(%esp),%eax
4101fc:	83 c4 10             	add    $0x10,%esp
4101ff:	5b                   	pop    %ebx
410200:	c3                   	ret
410201:	8d 40 00             	lea    0x0(%eax),%eax
410204:	55                   	push   %ebp
410205:	8b ec                	mov    %esp,%ebp
410207:	83 c4 ec             	add    $0xffffffec,%esp
41020a:	53                   	push   %ebx
41020b:	8b d8                	mov    %eax,%ebx
41020d:	8d 45 ec             	lea    -0x14(%ebp),%eax
410210:	50                   	push   %eax
410211:	e8 de e0 ff ff       	call   0x40e2f4
410216:	33 c0                	xor    %eax,%eax
410218:	55                   	push   %ebp
410219:	68 58 02 41 00       	push   $0x410258
41021e:	64 ff 30             	push   %fs:(%eax)
410221:	64 89 20             	mov    %esp,%fs:(%eax)
410224:	8b d3                	mov    %ebx,%edx
410226:	8d 45 ec             	lea    -0x14(%ebp),%eax
410229:	e8 ee f9 ff ff       	call   0x40fc1c
41022e:	8d 45 ec             	lea    -0x14(%ebp),%eax
410231:	ff 15 9c 12 47 00    	call   *0x47129c
410237:	8d 45 ec             	lea    -0x14(%ebp),%eax
41023a:	e8 6d 00 00 00       	call   0x4102ac
41023f:	89 45 fc             	mov    %eax,-0x4(%ebp)
410242:	33 c0                	xor    %eax,%eax
410244:	5a                   	pop    %edx
410245:	59                   	pop    %ecx
410246:	59                   	pop    %ecx
410247:	64 89 10             	mov    %edx,%fs:(%eax)
41024a:	68 5f 02 41 00       	push   $0x41025f
41024f:	8d 45 ec             	lea    -0x14(%ebp),%eax
410252:	e8 9d f6 ff ff       	call   0x40f8f4
410257:	c3                   	ret
410258:	e9 2b 3e ff ff       	jmp    0x404088
41025d:	eb f0                	jmp    0x41024f
41025f:	8b 45 fc             	mov    -0x4(%ebp),%eax
410262:	5b                   	pop    %ebx
410263:	8b e5                	mov    %ebp,%esp
410265:	5d                   	pop    %ebp
410266:	c3                   	ret
410267:	90                   	nop
410268:	53                   	push   %ebx
410269:	56                   	push   %esi
41026a:	57                   	push   %edi
41026b:	83 c4 ec             	add    $0xffffffec,%esp
41026e:	8b fa                	mov    %edx,%edi
410270:	8b f0                	mov    %eax,%esi
410272:	8b d4                	mov    %esp,%edx
410274:	0f b7 06             	movzwl (%esi),%eax
410277:	e8 d8 42 00 00       	call   0x414554
41027c:	8b d8                	mov    %eax,%ebx
41027e:	84 db                	test   %bl,%bl
410280:	74 21                	je     0x4102a3
410282:	8d 44 24 04          	lea    0x4(%esp),%eax
410286:	50                   	push   %eax
410287:	e8 68 e0 ff ff       	call   0x40e2f4
41028c:	6a 03                	push   $0x3
41028e:	8b ce                	mov    %esi,%ecx
410290:	8d 54 24 08          	lea    0x8(%esp),%edx
410294:	8b 44 24 04          	mov    0x4(%esp),%eax
410298:	8b 30                	mov    (%eax),%esi
41029a:	ff 56 1c             	call   *0x1c(%esi)
41029d:	8b 44 24 0c          	mov    0xc(%esp),%eax
4102a1:	89 07                	mov    %eax,(%edi)
4102a3:	8b c3                	mov    %ebx,%eax
4102a5:	83 c4 14             	add    $0x14,%esp
4102a8:	5f                   	pop    %edi
4102a9:	5e                   	pop    %esi
4102aa:	5b                   	pop    %ebx
4102ab:	c3                   	ret
4102ac:	55                   	push   %ebp
4102ad:	8b ec                	mov    %esp,%ebp
4102af:	83 c4 f8             	add    $0xfffffff8,%esp
4102b2:	53                   	push   %ebx
4102b3:	56                   	push   %esi
4102b4:	57                   	push   %edi
4102b5:	89 45 fc             	mov    %eax,-0x4(%ebp)
4102b8:	33 d2                	xor    %edx,%edx
4102ba:	55                   	push   %ebp
4102bb:	68 cd 06 41 00       	push   $0x4106cd
4102c0:	64 ff 32             	push   %fs:(%edx)
4102c3:	64 89 22             	mov    %esp,%fs:(%edx)
4102c6:	8b 45 fc             	mov    -0x4(%ebp),%eax
4102c9:	0f b7 00             	movzwl (%eax),%eax
4102cc:	0f b7 d0             	movzwl %ax,%edx
4102cf:	83 fa 14             	cmp    $0x14,%edx
4102d2:	0f 87 d1 01 00 00    	ja     0x4104a9
4102d8:	ff 24 95 df 02 41 00 	jmp    *0x4102df(,%edx,4)
4102df:	33 03                	xor    (%ebx),%eax
4102e1:	41                   	inc    %ecx
4102e2:	00 3d 03 41 00 5d    	add    %bh,0x5d004103
4102e8:	03 41 00             	add    0x0(%ecx),%eax
4102eb:	6c                   	insb   (%dx),%es:(%edi)
4102ec:	03 41 00             	add    0x0(%ecx),%eax
4102ef:	7a 03                	jp     0x4102f4
4102f1:	41                   	inc    %ecx
4102f2:	00 9b 03 41 00 bc    	add    %bl,-0x43ffbefd(%ebx)
4102f8:	03 41 00             	add    0x0(%ecx),%eax
4102fb:	e3 03                	jecxz  0x410300
4102fd:	41                   	inc    %ecx
4102fe:	00 04 04             	add    %al,(%esp,%eax,1)
410301:	41                   	inc    %ecx
410302:	00 99 04 41 00 a9    	add    %bl,-0x56ffbefc(%ecx)
410308:	04 41                	add    $0x41,%al
41030a:	00 14 04             	add    %dl,(%esp,%eax,1)
41030d:	41                   	inc    %ecx
41030e:	00 86 04 41 00 99    	add    %al,-0x66ffbefc(%esi)
410314:	04 41                	add    $0x41,%al
410316:	00 a9 04 41 00 a9    	add    %ch,-0x56ffbefc(%ecx)
41031c:	04 41                	add    $0x41,%al
41031e:	00 23                	add    %ah,(%ebx)
410320:	04 41                	add    $0x41,%al
410322:	00 32                	add    %dh,(%edx)
410324:	04 41                	add    $0x41,%al
410326:	00 41 04             	add    %al,0x4(%ecx)
410329:	41                   	inc    %ecx
41032a:	00 50 04             	add    %dl,0x4(%eax)
41032d:	41                   	inc    %ecx
41032e:	00 67 04             	add    %ah,0x4(%edi)
410331:	41                   	inc    %ecx
410332:	00 33                	add    %dh,(%ebx)
410334:	c0 89 45 f8 e9 86 03 	rorb   $0x3,-0x791607bb(%ecx)
41033b:	00 00                	add    %al,(%eax)
41033d:	80 3d 14 0a 46 00 00 	cmpb   $0x0,0x460a14
410344:	74 0d                	je     0x410353
410346:	66 ba 03 00          	mov    $0x3,%dx
41034a:	66 b8 01 00          	mov    $0x1,%ax
41034e:	e8 bd ed ff ff       	call   0x40f110
410353:	33 c0                	xor    %eax,%eax
410355:	89 45 f8             	mov    %eax,-0x8(%ebp)
410358:	e9 66 03 00 00       	jmp    0x4106c3
41035d:	8b 45 fc             	mov    -0x4(%ebp),%eax
410360:	0f bf 40 08          	movswl 0x8(%eax),%eax
410364:	89 45 f8             	mov    %eax,-0x8(%ebp)
410367:	e9 57 03 00 00       	jmp    0x4106c3
41036c:	8b 45 fc             	mov    -0x4(%ebp),%eax
41036f:	8b 40 08             	mov    0x8(%eax),%eax
410372:	89 45 f8             	mov    %eax,-0x8(%ebp)
410375:	e9 49 03 00 00       	jmp    0x4106c3
41037a:	8b 45 fc             	mov    -0x4(%ebp),%eax
41037d:	d9 40 08             	flds   0x8(%eax)
410380:	e8 a3 2c ff ff       	call   0x403028
410385:	50                   	push   %eax
410386:	c1 f8 1f             	sar    $0x1f,%eax
410389:	3b c2                	cmp    %edx,%eax
41038b:	58                   	pop    %eax
41038c:	74 05                	je     0x410393
41038e:	e8 31 34 ff ff       	call   0x4037c4
410393:	89 45 f8             	mov    %eax,-0x8(%ebp)
410396:	e9 28 03 00 00       	jmp    0x4106c3
41039b:	8b 45 fc             	mov    -0x4(%ebp),%eax
41039e:	dd 40 08             	fldl   0x8(%eax)
4103a1:	e8 82 2c ff ff       	call   0x403028
4103a6:	50                   	push   %eax
4103a7:	c1 f8 1f             	sar    $0x1f,%eax
4103aa:	3b c2                	cmp    %edx,%eax
4103ac:	58                   	pop    %eax
4103ad:	74 05                	je     0x4103b4
4103af:	e8 10 34 ff ff       	call   0x4037c4
4103b4:	89 45 f8             	mov    %eax,-0x8(%ebp)
4103b7:	e9 07 03 00 00       	jmp    0x4106c3
4103bc:	8b 45 fc             	mov    -0x4(%ebp),%eax
4103bf:	df 68 08             	fildll 0x8(%eax)
4103c2:	d8 35 f8 06 41 00    	fdivs  0x4106f8
4103c8:	e8 5b 2c ff ff       	call   0x403028
4103cd:	50                   	push   %eax
4103ce:	c1 f8 1f             	sar    $0x1f,%eax
4103d1:	3b c2                	cmp    %edx,%eax
4103d3:	58                   	pop    %eax
4103d4:	74 05                	je     0x4103db
4103d6:	e8 e9 33 ff ff       	call   0x4037c4
4103db:	89 45 f8             	mov    %eax,-0x8(%ebp)
4103de:	e9 e0 02 00 00       	jmp    0x4106c3
4103e3:	8b 45 fc             	mov    -0x4(%ebp),%eax
4103e6:	dd 40 08             	fldl   0x8(%eax)
4103e9:	e8 3a 2c ff ff       	call   0x403028
4103ee:	50                   	push   %eax
4103ef:	c1 f8 1f             	sar    $0x1f,%eax
4103f2:	3b c2                	cmp    %edx,%eax
4103f4:	58                   	pop    %eax
4103f5:	74 05                	je     0x4103fc
4103f7:	e8 c8 33 ff ff       	call   0x4037c4
4103fc:	89 45 f8             	mov    %eax,-0x8(%ebp)
4103ff:	e9 bf 02 00 00       	jmp    0x4106c3
410404:	8b 45 fc             	mov    -0x4(%ebp),%eax
410407:	e8 08 fd ff ff       	call   0x410114
41040c:	89 45 f8             	mov    %eax,-0x8(%ebp)
41040f:	e9 af 02 00 00       	jmp    0x4106c3
410414:	8b 45 fc             	mov    -0x4(%ebp),%eax
410417:	0f bf 40 08          	movswl 0x8(%eax),%eax
41041b:	89 45 f8             	mov    %eax,-0x8(%ebp)
41041e:	e9 a0 02 00 00       	jmp    0x4106c3
410423:	8b 45 fc             	mov    -0x4(%ebp),%eax
410426:	0f be 40 08          	movsbl 0x8(%eax),%eax
41042a:	89 45 f8             	mov    %eax,-0x8(%ebp)
41042d:	e9 91 02 00 00       	jmp    0x4106c3
410432:	8b 45 fc             	mov    -0x4(%ebp),%eax
410435:	0f b6 40 08          	movzbl 0x8(%eax),%eax
410439:	89 45 f8             	mov    %eax,-0x8(%ebp)
41043c:	e9 82 02 00 00       	jmp    0x4106c3
410441:	8b 45 fc             	mov    -0x4(%ebp),%eax
410444:	0f b7 40 08          	movzwl 0x8(%eax),%eax
410448:	89 45 f8             	mov    %eax,-0x8(%ebp)
41044b:	e9 73 02 00 00       	jmp    0x4106c3
410450:	8b 45 fc             	mov    -0x4(%ebp),%eax
410453:	8b 40 08             	mov    0x8(%eax),%eax
410456:	85 c0                	test   %eax,%eax
410458:	79 05                	jns    0x41045f
41045a:	e8 65 33 ff ff       	call   0x4037c4
41045f:	89 45 f8             	mov    %eax,-0x8(%ebp)
410462:	e9 5c 02 00 00       	jmp    0x4106c3
410467:	8b 45 fc             	mov    -0x4(%ebp),%eax
41046a:	8b 50 0c             	mov    0xc(%eax),%edx
41046d:	8b 40 08             	mov    0x8(%eax),%eax
410470:	50                   	push   %eax
410471:	c1 f8 1f             	sar    $0x1f,%eax
410474:	3b c2                	cmp    %edx,%eax
410476:	58                   	pop    %eax
410477:	74 05                	je     0x41047e
410479:	e8 46 33 ff ff       	call   0x4037c4
41047e:	89 45 f8             	mov    %eax,-0x8(%ebp)
410481:	e9 3d 02 00 00       	jmp    0x4106c3
410486:	8b 45 fc             	mov    -0x4(%ebp),%eax
410489:	8b 40 08             	mov    0x8(%eax),%eax
41048c:	e8 1b fe ff ff       	call   0x4102ac
410491:	89 45 f8             	mov    %eax,-0x8(%ebp)
410494:	e9 2a 02 00 00       	jmp    0x4106c3
410499:	8b 45 fc             	mov    -0x4(%ebp),%eax
41049c:	e8 27 fd ff ff       	call   0x4101c8
4104a1:	89 45 f8             	mov    %eax,-0x8(%ebp)
4104a4:	e9 1a 02 00 00       	jmp    0x4106c3
4104a9:	8b 55 fc             	mov    -0x4(%ebp),%edx