40febb:	8b d4                	mov    %esp,%edx
40febd:	8b c6                	mov    %esi,%eax
40febf:	e8 90 46 00 00       	call   0x414554
40fec4:	84 c0                	test   %al,%al
40fec6:	74 0e                	je     0x40fed6
40fec8:	8b cb                	mov    %ebx,%ecx
40feca:	8b d7                	mov    %edi,%edx
40fecc:	8b 04 24             	mov    (%esp),%eax
40fecf:	8b 18                	mov    (%eax),%ebx
40fed1:	ff 53 18             	call   *0x18(%ebx)
40fed4:	eb 0b                	jmp    0x40fee1
40fed6:	8b d3                	mov    %ebx,%edx
40fed8:	8b c7                	mov    %edi,%eax
40feda:	8b ce                	mov    %esi,%ecx
40fedc:	e8 1b ff ff ff       	call   0x40fdfc
40fee1:	5a                   	pop    %edx
40fee2:	5d                   	pop    %ebp
40fee3:	5f                   	pop    %edi
40fee4:	5e                   	pop    %esi
40fee5:	5b                   	pop    %ebx
40fee6:	c3                   	ret
40fee7:	90                   	nop
40fee8:	53                   	push   %ebx
40fee9:	56                   	push   %esi
40feea:	8b da                	mov    %edx,%ebx
40feec:	8b f0                	mov    %eax,%esi
40feee:	0f b7 03             	movzwl (%ebx),%eax
40fef1:	0f b7 d0             	movzwl %ax,%edx
40fef4:	3b ca                	cmp    %edx,%ecx
40fef6:	75 0c                	jne    0x40ff04
40fef8:	8b d3                	mov    %ebx,%edx
40fefa:	8b c6                	mov    %esi,%eax
40fefc:	e8 1b fd ff ff       	call   0x40fc1c
40ff01:	5e                   	pop    %esi
40ff02:	5b                   	pop    %ebx
40ff03:	c3                   	ret
40ff04:	66 3d 0c 40          	cmp    $0x400c,%ax
40ff08:	75 11                	jne    0x40ff1b
40ff0a:	8b 43 08             	mov    0x8(%ebx),%eax
40ff0d:	8b d0                	mov    %eax,%edx
40ff0f:	8b c6                	mov    %esi,%eax
40ff11:	e8 d2 ff ff ff       	call   0x40fee8
40ff16:	e9 f3 01 00 00       	jmp    0x41010e
40ff1b:	8b d1                	mov    %ecx,%edx
40ff1d:	83 fa 14             	cmp    $0x14,%edx
40ff20:	0f 87 ba 01 00 00    	ja     0x4100e0
40ff26:	ff 24 95 2d ff 40 00 	jmp    *0x40ff2d(,%edx,4)
40ff2d:	81 ff 40 00 ac ff    	cmp    $0xffac0040,%edi
40ff33:	40                   	inc    %eax
40ff34:	00 b8 ff 40 00 cd    	add    %bh,-0x32ffbf01(%eax)
40ff3a:	ff 40 00             	incl   0x0(%eax)
40ff3d:	e2 ff                	loop   0x40ff3e
40ff3f:	40                   	inc    %eax
40ff40:	00 fc                	add    %bh,%ah
40ff42:	ff 40 00             	incl   0x0(%eax)
40ff45:	16                   	push   %ss
40ff46:	00 41 00             	add    %al,0x0(%ecx)
40ff49:	30 00                	xor    %al,(%eax)
40ff4b:	41                   	inc    %ecx
40ff4c:	00 4a 00             	add    %cl,0x0(%edx)
40ff4f:	41                   	inc    %ecx
40ff50:	00 ca                	add    %cl,%dl
40ff52:	00 41 00             	add    %al,0x0(%ecx)
40ff55:	e0 00                	loopne 0x40ff57
40ff57:	41                   	inc    %ecx
40ff58:	00 58 00             	add    %bl,0x0(%eax)
40ff5b:	41                   	inc    %ecx
40ff5c:	00 e0                	add    %ah,%al
40ff5e:	00 41 00             	add    %al,0x0(%ecx)
40ff61:	d5 00                	aad    $0x0
40ff63:	41                   	inc    %ecx
40ff64:	00 e0                	add    %ah,%al
40ff66:	00 41 00             	add    %al,0x0(%ecx)
40ff69:	e0 00                	loopne 0x40ff6b
40ff6b:	41                   	inc    %ecx
40ff6c:	00 6d 00             	add    %ch,0x0(%ebp)
40ff6f:	41                   	inc    %ecx
40ff70:	00 82 00 41 00 94    	add    %al,-0x6bffbf00(%edx)
40ff76:	00 41 00             	add    %al,0x0(%ecx)
40ff79:	a6                   	cmpsb  %es:(%edi),%ds:(%esi)
40ff7a:	00 41 00             	add    %al,0x0(%ecx)
40ff7d:	b8 00 41 00 66       	mov    $0x66004100,%eax
40ff82:	83 3b 01             	cmpl   $0x1,(%ebx)
40ff85:	75 19                	jne    0x40ffa0
40ff87:	80 3d 14 0a 46 00 00 	cmpb   $0x0,0x460a14
40ff8e:	74 10                	je     0x40ffa0
40ff90:	33 d2                	xor    %edx,%edx
40ff92:	66 b8 01 00          	mov    $0x1,%ax
40ff96:	e8 75 f1 ff ff       	call   0x40f110
40ff9b:	e9 6e 01 00 00       	jmp    0x41010e
40ffa0:	8b c6                	mov    %esi,%eax
40ffa2:	e8 4d f9 ff ff       	call   0x40f8f4
40ffa7:	e9 62 01 00 00       	jmp    0x41010e
40ffac:	8b c6                	mov    %esi,%eax
40ffae:	e8 a9 f6 ff ff       	call   0x40f65c
40ffb3:	e9 56 01 00 00       	jmp    0x41010e
40ffb8:	8b c3                	mov    %ebx,%eax
40ffba:	e8 99 08 00 00       	call   0x410858
40ffbf:	8b d0                	mov    %eax,%edx
40ffc1:	8b c6                	mov    %esi,%eax
40ffc3:	e8 70 3b 00 00       	call   0x413b38
40ffc8:	e9 41 01 00 00       	jmp    0x41010e
40ffcd:	8b c3                	mov    %ebx,%eax
40ffcf:	e8 d8 02 00 00       	call   0x4102ac
40ffd4:	8b d0                	mov    %eax,%edx
40ffd6:	8b c6                	mov    %esi,%eax
40ffd8:	e8 bb 3a 00 00       	call   0x413a98
40ffdd:	e9 2c 01 00 00       	jmp    0x41010e
40ffe2:	8b c3                	mov    %ebx,%eax
40ffe4:	e8 17 1c 00 00       	call   0x411c00
40ffe9:	83 c4 fc             	add    $0xfffffffc,%esp
40ffec:	d9 1c 24             	fstps  (%esp)
40ffef:	9b                   	fwait
40fff0:	8b c6                	mov    %esi,%eax
40fff2:	e8 8d 3b 00 00       	call   0x413b84
40fff7:	e9 12 01 00 00       	jmp    0x41010e
40fffc:	8b c3                	mov    %ebx,%eax
40fffe:	e8 85 18 00 00       	call   0x411888
410003:	83 c4 f8             	add    $0xfffffff8,%esp
410006:	dd 1c 24             	fstpl  (%esp)
410009:	9b                   	fwait
41000a:	8b c6                	mov    %esi,%eax
41000c:	e8 97 3b 00 00       	call   0x413ba8
410011:	e9 f8 00 00 00       	jmp    0x41010e
410016:	8b c3                	mov    %ebx,%eax
410018:	e8 23 25 00 00       	call   0x412540
41001d:	83 c4 f8             	add    $0xfffffff8,%esp
410020:	df 3c 24             	fistpll (%esp)
410023:	9b                   	fwait
410024:	8b c6                	mov    %esi,%eax
410026:	e8 a9 3b 00 00       	call   0x413bd4
41002b:	e9 de 00 00 00       	jmp    0x41010e
410030:	8b c3                	mov    %ebx,%eax
410032:	e8 a1 1f 00 00       	call   0x411fd8
410037:	83 c4 f8             	add    $0xfffffff8,%esp
41003a:	dd 1c 24             	fstpl  (%esp)
41003d:	9b                   	fwait
41003e:	8b c6                	mov    %esi,%eax
410040:	e8 bb 3b 00 00       	call   0x413c00
410045:	e9 c4 00 00 00       	jmp    0x41010e
41004a:	8b d3                	mov    %ebx,%edx
41004c:	8b c6                	mov    %esi,%eax
41004e:	e8 79 fc ff ff       	call   0x40fccc
410053:	e9 b6 00 00 00       	jmp    0x41010e
410058:	8b c3                	mov    %ebx,%eax
41005a:	e8 15 13 00 00       	call   0x411374
41005f:	8b d0                	mov    %eax,%edx
410061:	8b c6                	mov    %esi,%eax
410063:	e8 c4 3b 00 00       	call   0x413c2c
410068:	e9 a1 00 00 00       	jmp    0x41010e
41006d:	8b c3                	mov    %ebx,%eax
41006f:	e8 88 06 00 00       	call   0x4106fc
410074:	8b d0                	mov    %eax,%edx
410076:	8b c6                	mov    %esi,%eax
410078:	e8 9b 3a 00 00       	call   0x413b18
41007d:	e9 8c 00 00 00       	jmp    0x41010e
410082:	8b c3                	mov    %ebx,%eax
410084:	e8 27 07 00 00       	call   0x4107b0
410089:	8b d0                	mov    %eax,%edx
41008b:	8b c6                	mov    %esi,%eax
41008d:	e8 26 3a 00 00       	call   0x413ab8
410092:	eb 7a                	jmp    0x41010e
410094:	8b c3                	mov    %ebx,%eax
410096:	e8 b5 08 00 00       	call   0x410950
41009b:	8b d0                	mov    %eax,%edx
41009d:	8b c6                	mov    %esi,%eax
41009f:	e8 34 3a 00 00       	call   0x413ad8
4100a4:	eb 68                	jmp    0x41010e
4100a6:	8b c3                	mov    %ebx,%eax
4100a8:	e8 7f 09 00 00       	call   0x410a2c
4100ad:	8b d0                	mov    %eax,%edx
4100af:	8b c6                	mov    %esi,%eax
4100b1:	e8 42 3a 00 00       	call   0x413af8
4100b6:	eb 56                	jmp    0x41010e
4100b8:	8b c3                	mov    %ebx,%eax
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