41d122:	66 39 55 08          	cmp    %dx,0x8(%ebp)
41d126:	73 29                	jae    0x41d151
41d128:	8d 45 ec             	lea    -0x14(%ebp),%eax
41d12b:	50                   	push   %eax
41d12c:	6a 02                	push   $0x2
41d12e:	ff 75 08             	push   0x8(%ebp)
41d131:	e8 9d 52 00 00       	call   0x4223d3
41d136:	83 c4 0c             	add    $0xc,%esp
41d139:	85 c0                	test   %eax,%eax
41d13b:	0f b7 45 08          	movzwl 0x8(%ebp),%eax
41d13f:	74 3d                	je     0x41d17e
41d141:	8b 4d ec             	mov    -0x14(%ebp),%ecx
41d144:	8b 89 d0 00 00 00    	mov    0xd0(%ecx),%ecx
41d14a:	66 0f b6 04 01       	movzbw (%ecx,%eax,1),%ax
41d14f:	eb c7                	jmp    0x41d118
41d151:	ff 70 04             	push   0x4(%eax)
41d154:	8d 45 fc             	lea    -0x4(%ebp),%eax
41d157:	6a 01                	push   $0x1
41d159:	50                   	push   %eax
41d15a:	6a 01                	push   $0x1
41d15c:	8d 45 08             	lea    0x8(%ebp),%eax
41d15f:	50                   	push   %eax
41d160:	68 00 02 00 00       	push   $0x200
41d165:	51                   	push   %ecx
41d166:	8d 45 ec             	lea    -0x14(%ebp),%eax
41d169:	50                   	push   %eax
41d16a:	e8 0d 52 00 00       	call   0x42237c
41d16f:	83 c4 20             	add    $0x20,%esp
41d172:	85 c0                	test   %eax,%eax
41d174:	0f b7 45 08          	movzwl 0x8(%ebp),%eax
41d178:	74 04                	je     0x41d17e
41d17a:	0f b7 45 fc          	movzwl -0x4(%ebp),%eax
41d17e:	38 5d f8             	cmp    %bl,-0x8(%ebp)
41d181:	74 07                	je     0x41d18a
41d183:	8b 4d f4             	mov    -0xc(%ebp),%ecx
41d186:	83 61 70 fd          	andl   $0xfffffffd,0x70(%ecx)
41d18a:	5b                   	pop    %ebx
41d18b:	c9                   	leave
41d18c:	c3                   	ret
41d18d:	8b ff                	mov    %edi,%edi
41d18f:	55                   	push   %ebp
41d190:	8b ec                	mov    %esp,%ebp
41d192:	6a 00                	push   $0x0
41d194:	ff 75 08             	push   0x8(%ebp)
41d197:	e8 3c ff ff ff       	call   0x41d0d8
41d19c:	59                   	pop    %ecx
41d19d:	59                   	pop    %ecx
41d19e:	5d                   	pop    %ebp
41d19f:	c3                   	ret
41d1a0:	8b ff                	mov    %edi,%edi
41d1a2:	55                   	push   %ebp
41d1a3:	8b ec                	mov    %esp,%ebp
41d1a5:	53                   	push   %ebx
41d1a6:	8b 5d 08             	mov    0x8(%ebp),%ebx
41d1a9:	56                   	push   %esi
41d1aa:	57                   	push   %edi
41d1ab:	8b f9                	mov    %ecx,%edi
41d1ad:	c7 07 c0 b1 42 00    	movl   $0x42b1c0,(%edi)
41d1b3:	8b 03                	mov    (%ebx),%eax
41d1b5:	85 c0                	test   %eax,%eax
41d1b7:	74 26                	je     0x41d1df
41d1b9:	50                   	push   %eax
41d1ba:	e8 81 d2 ff ff       	call   0x41a440
41d1bf:	8b f0                	mov    %eax,%esi
41d1c1:	46                   	inc    %esi
41d1c2:	56                   	push   %esi
41d1c3:	e8 96 f7 ff ff       	call   0x41c95e
41d1c8:	59                   	pop    %ecx
41d1c9:	59                   	pop    %ecx
41d1ca:	89 47 04             	mov    %eax,0x4(%edi)
41d1cd:	85 c0                	test   %eax,%eax
41d1cf:	74 12                	je     0x41d1e3
41d1d1:	ff 33                	push   (%ebx)
41d1d3:	56                   	push   %esi
41d1d4:	50                   	push   %eax
41d1d5:	e8 83 52 00 00       	call   0x42245d
41d1da:	83 c4 0c             	add    $0xc,%esp
41d1dd:	eb 04                	jmp    0x41d1e3
41d1df:	83 67 04 00          	andl   $0x0,0x4(%edi)
41d1e3:	c7 47 08 01 00 00 00 	movl   $0x1,0x8(%edi)
41d1ea:	8b c7                	mov    %edi,%eax
41d1ec:	5f                   	pop    %edi
41d1ed:	5e                   	pop    %esi
41d1ee:	5b                   	pop    %ebx
41d1ef:	5d                   	pop    %ebp
41d1f0:	c2 04 00             	ret    $0x4
41d1f3:	8b ff                	mov    %edi,%edi
41d1f5:	55                   	push   %ebp
41d1f6:	8b ec                	mov    %esp,%ebp
41d1f8:	8b c1                	mov    %ecx,%eax
41d1fa:	8b 4d 08             	mov    0x8(%ebp),%ecx
41d1fd:	c7 00 c0 b1 42 00    	movl   $0x42b1c0,(%eax)
41d203:	8b 09                	mov    (%ecx),%ecx
41d205:	83 60 08 00          	andl   $0x0,0x8(%eax)
41d209:	89 48 04             	mov    %ecx,0x4(%eax)
41d20c:	5d                   	pop    %ebp
41d20d:	c2 08 00             	ret    $0x8
41d210:	8b ff                	mov    %edi,%edi
41d212:	55                   	push   %ebp
41d213:	8b ec                	mov    %esp,%ebp
41d215:	53                   	push   %ebx
41d216:	8b 5d 08             	mov    0x8(%ebp),%ebx
41d219:	56                   	push   %esi
41d21a:	8b f1                	mov    %ecx,%esi
41d21c:	c7 06 c0 b1 42 00    	movl   $0x42b1c0,(%esi)
41d222:	8b 43 08             	mov    0x8(%ebx),%eax
41d225:	89 46 08             	mov    %eax,0x8(%esi)
41d228:	85 c0                	test   %eax,%eax
41d22a:	8b 43 04             	mov    0x4(%ebx),%eax
41d22d:	57                   	push   %edi
41d22e:	74 31                	je     0x41d261
41d230:	85 c0                	test   %eax,%eax
41d232:	74 27                	je     0x41d25b
41d234:	50                   	push   %eax
41d235:	e8 06 d2 ff ff       	call   0x41a440
41d23a:	8b f8                	mov    %eax,%edi
41d23c:	47                   	inc    %edi
41d23d:	57                   	push   %edi
41d23e:	e8 1b f7 ff ff       	call   0x41c95e
41d243:	59                   	pop    %ecx
41d244:	59                   	pop    %ecx
41d245:	89 46 04             	mov    %eax,0x4(%esi)
41d248:	85 c0                	test   %eax,%eax
41d24a:	74 18                	je     0x41d264
41d24c:	ff 73 04             	push   0x4(%ebx)
41d24f:	57                   	push   %edi
41d250:	50                   	push   %eax
41d251:	e8 07 52 00 00       	call   0x42245d
41d256:	83 c4 0c             	add    $0xc,%esp
41d259:	eb 09                	jmp    0x41d264
41d25b:	83 66 04 00          	andl   $0x0,0x4(%esi)
41d25f:	eb 03                	jmp    0x41d264
41d261:	89 46 04             	mov    %eax,0x4(%esi)
41d264:	5f                   	pop    %edi
41d265:	8b c6                	mov    %esi,%eax
41d267:	5e                   	pop    %esi
41d268:	5b                   	pop    %ebx
41d269:	5d                   	pop    %ebp
41d26a:	c2 04 00             	ret    $0x4
41d26d:	83 79 08 00          	cmpl   $0x0,0x8(%ecx)
41d271:	c7 01 c0 b1 42 00    	movl   $0x42b1c0,(%ecx)
41d277:	74 09                	je     0x41d282
41d279:	ff 71 04             	push   0x4(%ecx)
41d27c:	e8 61 cc ff ff       	call   0x419ee2
41d281:	59                   	pop    %ecx
41d282:	c3                   	ret
41d283:	8b 41 04             	mov    0x4(%ecx),%eax
41d286:	85 c0                	test   %eax,%eax
41d288:	75 05                	jne    0x41d28f
41d28a:	b8 c8 b1 42 00       	mov    $0x42b1c8,%eax
41d28f:	c3                   	ret
41d290:	8b ff                	mov    %edi,%edi
41d292:	55                   	push   %ebp
41d293:	8b ec                	mov    %esp,%ebp
41d295:	56                   	push   %esi
41d296:	8b f1                	mov    %ecx,%esi
41d298:	e8 d0 ff ff ff       	call   0x41d26d
41d29d:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
41d2a1:	74 07                	je     0x41d2aa
41d2a3:	56                   	push   %esi
41d2a4:	e8 2e cc ff ff       	call   0x419ed7
41d2a9:	59                   	pop    %ecx
41d2aa:	8b c6                	mov    %esi,%eax
41d2ac:	5e                   	pop    %esi
41d2ad:	5d                   	pop    %ebp
41d2ae:	c2 04 00             	ret    $0x4
41d2b1:	cc                   	int3
41d2b2:	cc                   	int3
41d2b3:	cc                   	int3
41d2b4:	cc                   	int3
41d2b5:	cc                   	int3
41d2b6:	cc                   	int3
41d2b7:	cc                   	int3
41d2b8:	cc                   	int3
41d2b9:	cc                   	int3
41d2ba:	cc                   	int3
41d2bb:	cc                   	int3
41d2bc:	cc                   	int3
41d2bd:	cc                   	int3
41d2be:	cc                   	int3
41d2bf:	cc                   	int3
41d2c0:	80 f9 40             	cmp    $0x40,%cl
41d2c3:	73 16                	jae    0x41d2db
41d2c5:	80 f9 20             	cmp    $0x20,%cl
41d2c8:	73 06                	jae    0x41d2d0
41d2ca:	0f ad d0             	shrd   %cl,%edx,%eax
41d2cd:	d3 fa                	sar    %cl,%edx
41d2cf:	c3                   	ret
41d2d0:	8b c2                	mov    %edx,%eax
41d2d2:	c1 fa 1f             	sar    $0x1f,%edx
41d2d5:	80 e1 1f             	and    $0x1f,%cl
41d2d8:	d3 f8                	sar    %cl,%eax
41d2da:	c3                   	ret
41d2db:	c1 fa 1f             	sar    $0x1f,%edx
41d2de:	8b c2                	mov    %edx,%eax
41d2e0:	c3                   	ret
41d2e1:	b8 7d 2f 42 00       	mov    $0x422f7d,%eax
41d2e6:	a3 90 fe 42 00       	mov    %eax,0x42fe90
41d2eb:	c7 05 94 fe 42 00 64 	movl   $0x422664,0x42fe94
41d2f2:	26 42 00
41d2f5:	c7 05 98 fe 42 00 18 	movl   $0x422618,0x42fe98
41d2fc:	26 42 00
41d2ff:	c7 05 9c fe 42 00 51 	movl   $0x422651,0x42fe9c
41d306:	26 42 00
41d309:	c7 05 a0 fe 42 00 ba 	movl   $0x4225ba,0x42fea0
41d310:	25 42 00
41d313:	a3 a4 fe 42 00       	mov    %eax,0x42fea4
41d318:	c7 05 a8 fe 42 00 f5 	movl   $0x422ef5,0x42fea8
41d31f:	2e 42 00
41d322:	c7 05 ac fe 42 00 d6 	movl   $0x4225d6,0x42feac
41d329:	25 42 00
41d32c:	c7 05 b0 fe 42 00 38 	movl   $0x422538,0x42feb0
41d333:	25 42 00
41d336:	c7 05 b4 fe 42 00 c5 	movl   $0x4224c5,0x42feb4
41d33d:	24 42 00
41d340:	c3                   	ret
41d341:	8b ff                	mov    %edi,%edi
41d343:	55                   	push   %ebp
41d344:	8b ec                	mov    %esp,%ebp
41d346:	e8 96 ff ff ff       	call   0x41d2e1
41d34b:	e8 da 5c 00 00       	call   0x42302a
41d350:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
41d354:	a3 e4 ec 44 00       	mov    %eax,0x44ece4
41d359:	74 05                	je     0x41d360
41d35b:	e8 61 5c 00 00       	call   0x422fc1
41d360:	db e2                	fnclex
41d362:	5d                   	pop    %ebp
41d363:	c3                   	ret
41d364:	8b ff                	mov    %edi,%edi
41d366:	55                   	push   %ebp
41d367:	8b ec                	mov    %esp,%ebp
41d369:	83 3d f0 ec 44 00 01 	cmpl   $0x1,0x44ecf0
41d370:	75 05                	jne    0x41d377
41d372:	e8 b7 40 00 00       	call   0x42142e
41d377:	ff 75 08             	push   0x8(%ebp)
41d37a:	e8 04 3f 00 00       	call   0x421283
41d37f:	68 ff 00 00 00       	push   $0xff
41d384:	e8 40 38 00 00       	call   0x420bc9
41d389:	59                   	pop    %ecx
41d38a:	59                   	pop    %ecx
41d38b:	5d                   	pop    %ebp
41d38c:	c3                   	ret
41d38d:	6a 58                	push   $0x58
41d38f:	68 f8 d6 42 00       	push   $0x42d6f8
41d394:	e8 f3 21 00 00       	call   0x41f58c
41d399:	33 f6                	xor    %esi,%esi
41d39b:	89 75 fc             	mov    %esi,-0x4(%ebp)
41d39e:	8d 45 98             	lea    -0x68(%ebp),%eax
41d3a1:	50                   	push   %eax
41d3a2:	ff 15 dc a1 42 00    	call   *0x42a1dc
41d3a8:	6a fe                	push   $0xfffffffe
41d3aa:	5f                   	pop    %edi
41d3ab:	89 7d fc             	mov    %edi,-0x4(%ebp)
41d3ae:	b8 4d 5a 00 00       	mov    $0x5a4d,%eax
41d3b3:	66 39 05 00 00 40 00 	cmp    %ax,0x400000
41d3ba:	75 38                	jne    0x41d3f4
41d3bc:	a1 3c 00 40 00       	mov    0x40003c,%eax
41d3c1:	81 b8 00 00 40 00 50 	cmpl   $0x4550,0x400000(%eax)
41d3c8:	45 00 00
41d3cb:	75 27                	jne    0x41d3f4
41d3cd:	b9 0b 01 00 00       	mov    $0x10b,%ecx
41d3d2:	66 39 88 18 00 40 00 	cmp    %cx,0x400018(%eax)
41d3d9:	75 19                	jne    0x41d3f4
41d3db:	83 b8 74 00 40 00 0e 	cmpl   $0xe,0x400074(%eax)
41d3e2:	76 10                	jbe    0x41d3f4
41d3e4:	33 c9                	xor    %ecx,%ecx
41d3e6:	39 b0 e8 00 40 00    	cmp    %esi,0x4000e8(%eax)
41d3ec:	0f 95 c1             	setne  %cl
41d3ef:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
41d3f2:	eb 03                	jmp    0x41d3f7
41d3f4:	89 75 e4             	mov    %esi,-0x1c(%ebp)
41d3f7:	33 db                	xor    %ebx,%ebx
41d3f9:	43                   	inc    %ebx
41d3fa:	53                   	push   %ebx
41d3fb:	e8 e7 14 00 00       	call   0x41e8e7
41d400:	59                   	pop    %ecx
41d401:	85 c0                	test   %eax,%eax
41d403:	75 08                	jne    0x41d40d
41d405:	6a 1c                	push   $0x1c
41d407:	e8 58 ff ff ff       	call   0x41d364
41d40c:	59                   	pop    %ecx
41d40d:	e8 db 11 00 00       	call   0x41e5ed
41d412:	85 c0                	test   %eax,%eax
41d414:	75 08                	jne    0x41d41e
41d416:	6a 10                	push   $0x10
41d418:	e8 47 ff ff ff       	call   0x41d364
41d41d:	59                   	pop    %ecx
41d41e:	e8 fd 64 00 00       	call   0x423920
41d423:	89 5d fc             	mov    %ebx,-0x4(%ebp)
41d426:	e8 a1 62 00 00       	call   0x4236cc
41d42b:	85 c0                	test   %eax,%eax
41d42d:	7d 08                	jge    0x41d437
41d42f:	6a 1b                	push   $0x1b
41d431:	e8 3f 37 00 00       	call   0x420b75
41d436:	59                   	pop    %ecx
41d437:	ff 15 30 a2 42 00    	call   *0x42a230
41d43d:	a3 f8 08 45 00       	mov    %eax,0x4508f8
41d442:	e8 4e 61 00 00       	call   0x423595
41d447:	a3 e8 ec 44 00       	mov    %eax,0x44ece8
41d44c:	e8 89 60 00 00       	call   0x4234da
41d451:	85 c0                	test   %eax,%eax
41d453:	7d 08                	jge    0x41d45d
41d455:	6a 08                	push   $0x8
41d457:	e8 19 37 00 00       	call   0x420b75
41d45c:	59                   	pop    %ecx
41d45d:	e8 00 5e 00 00       	call   0x423262
41d462:	85 c0                	test   %eax,%eax
41d464:	7d 08                	jge    0x41d46e
41d466:	6a 09                	push   $0x9
41d468:	e8 08 37 00 00       	call   0x420b75
41d46d:	59                   	pop    %ecx
41d46e:	53                   	push   %ebx
41d46f:	e8 c0 37 00 00       	call   0x420c34
41d474:	59                   	pop    %ecx
41d475:	3b c6                	cmp    %esi,%eax
41d477:	74 07                	je     0x41d480
41d479:	50                   	push   %eax
41d47a:	e8 f6 36 00 00       	call   0x420b75
41d47f:	59                   	pop    %ecx
41d480:	e8 7e 5d 00 00       	call   0x423203
41d485:	84 5d c4             	test   %bl,-0x3c(%ebp)
41d488:	74 06                	je     0x41d490
41d48a:	0f b7 4d c8          	movzwl -0x38(%ebp),%ecx
41d48e:	eb 03                	jmp    0x41d493
41d490:	6a 0a                	push   $0xa
41d492:	59                   	pop    %ecx
41d493:	51                   	push   %ecx
41d494:	50                   	push   %eax
41d495:	56                   	push   %esi
41d496:	68 00 00 40 00       	push   $0x400000
41d49b:	e8 30 28 ff ff       	call   0x40fcd0
41d4a0:	89 45 e0             	mov    %eax,-0x20(%ebp)
41d4a3:	39 75 e4             	cmp    %esi,-0x1c(%ebp)
41d4a6:	75 06                	jne    0x41d4ae
41d4a8:	50                   	push   %eax
41d4a9:	e8 37 39 00 00       	call   0x420de5
41d4ae:	e8 5e 39 00 00       	call   0x420e11
41d4b3:	89 7d fc             	mov    %edi,-0x4(%ebp)
41d4b6:	eb 35                	jmp    0x41d4ed
41d4b8:	8b 45 ec             	mov    -0x14(%ebp),%eax
41d4bb:	8b 08                	mov    (%eax),%ecx
41d4bd:	8b 09                	mov    (%ecx),%ecx
41d4bf:	89 4d dc             	mov    %ecx,-0x24(%ebp)
41d4c2:	50                   	push   %eax
41d4c3:	51                   	push   %ecx
41d4c4:	e8 da 5b 00 00       	call   0x4230a3
41d4c9:	59                   	pop    %ecx
41d4ca:	59                   	pop    %ecx
41d4cb:	c3                   	ret
41d4cc:	8b 65 e8             	mov    -0x18(%ebp),%esp