41f143:	59                   	pop    %ecx
41f144:	c7 05 34 09 45 00 02 	movl   $0x2,0x450934
41f14b:	00 00 00
41f14e:	85 ff                	test   %edi,%edi
41f150:	75 09                	jne    0x41f15b
41f152:	33 c0                	xor    %eax,%eax
41f154:	b9 30 09 45 00       	mov    $0x450930,%ecx
41f159:	87 01                	xchg   %eax,(%ecx)
41f15b:	83 3d 40 09 45 00 00 	cmpl   $0x0,0x450940
41f162:	74 23                	je     0x41f187
41f164:	68 40 09 45 00       	push   $0x450940
41f169:	e8 82 07 00 00       	call   0x41f8f0
41f16e:	59                   	pop    %ecx
41f16f:	85 c0                	test   %eax,%eax
41f171:	74 14                	je     0x41f187
41f173:	53                   	push   %ebx
41f174:	6a 02                	push   $0x2
41f176:	53                   	push   %ebx
41f177:	8b 35 40 09 45 00    	mov    0x450940,%esi
41f17d:	8b ce                	mov    %esi,%ecx
41f17f:	ff 15 c4 12 45 00    	call   *0x4512c4
41f185:	ff d6                	call   *%esi
41f187:	a1 d4 11 45 00       	mov    0x4511d4,%eax
41f18c:	8b 30                	mov    (%eax),%esi
41f18e:	89 75 e4             	mov    %esi,-0x1c(%ebp)
41f191:	8b 7d e0             	mov    -0x20(%ebp),%edi
41f194:	8a 0e                	mov    (%esi),%cl
41f196:	80 f9 20             	cmp    $0x20,%cl
41f199:	77 4a                	ja     0x41f1e5
41f19b:	84 c9                	test   %cl,%cl
41f19d:	74 15                	je     0x41f1b4
41f19f:	85 ff                	test   %edi,%edi
41f1a1:	75 42                	jne    0x41f1e5
41f1a3:	84 c9                	test   %cl,%cl
41f1a5:	74 0d                	je     0x41f1b4
41f1a7:	80 f9 20             	cmp    $0x20,%cl
41f1aa:	77 08                	ja     0x41f1b4
41f1ac:	46                   	inc    %esi
41f1ad:	89 75 e4             	mov    %esi,-0x1c(%ebp)
41f1b0:	8a 0e                	mov    (%esi),%cl
41f1b2:	eb ef                	jmp    0x41f1a3
41f1b4:	f6 45 c4 01          	testb  $0x1,-0x3c(%ebp)
41f1b8:	74 06                	je     0x41f1c0
41f1ba:	0f b7 45 c8          	movzwl -0x38(%ebp),%eax
41f1be:	eb 03                	jmp    0x41f1c3
41f1c0:	6a 0a                	push   $0xa
41f1c2:	58                   	pop    %eax
41f1c3:	50                   	push   %eax
41f1c4:	56                   	push   %esi
41f1c5:	53                   	push   %ebx
41f1c6:	68 00 00 40 00       	push   $0x400000
41f1cb:	e8 60 81 ff ff       	call   0x417330
41f1d0:	a3 a0 05 45 00       	mov    %eax,0x4505a0
41f1d5:	83 3d b8 05 45 00 00 	cmpl   $0x0,0x4505b8
41f1dc:	75 60                	jne    0x41f23e
41f1de:	50                   	push   %eax
41f1df:	ff 15 f8 11 45 00    	call   *0x4511f8
41f1e5:	80 f9 22             	cmp    $0x22,%cl
41f1e8:	75 0c                	jne    0x41f1f6
41f1ea:	33 c0                	xor    %eax,%eax
41f1ec:	85 ff                	test   %edi,%edi
41f1ee:	0f 94 c0             	sete   %al
41f1f1:	8b f8                	mov    %eax,%edi
41f1f3:	89 7d e0             	mov    %edi,-0x20(%ebp)
41f1f6:	0f b6 c1             	movzbl %cl,%eax
41f1f9:	50                   	push   %eax
41f1fa:	ff 15 e0 11 45 00    	call   *0x4511e0
41f200:	59                   	pop    %ecx
41f201:	85 c0                	test   %eax,%eax
41f203:	74 04                	je     0x41f209
41f205:	46                   	inc    %esi
41f206:	89 75 e4             	mov    %esi,-0x1c(%ebp)
41f209:	46                   	inc    %esi
41f20a:	89 75 e4             	mov    %esi,-0x1c(%ebp)
41f20d:	eb 85                	jmp    0x41f194
41f20f:	8b 4d ec             	mov    -0x14(%ebp),%ecx
41f212:	8b 01                	mov    (%ecx),%eax
41f214:	8b 00                	mov    (%eax),%eax
41f216:	89 45 dc             	mov    %eax,-0x24(%ebp)
41f219:	51                   	push   %ecx
41f21a:	50                   	push   %eax
41f21b:	e8 be 05 00 00       	call   0x41f7de
41f220:	59                   	pop    %ecx
41f221:	59                   	pop    %ecx
41f222:	c3                   	ret
41f223:	8b 65 e8             	mov    -0x18(%ebp),%esp
41f226:	8b 45 dc             	mov    -0x24(%ebp),%eax
41f229:	a3 a0 05 45 00       	mov    %eax,0x4505a0
41f22e:	83 3d b8 05 45 00 00 	cmpl   $0x0,0x4505b8
41f235:	75 07                	jne    0x41f23e
41f237:	50                   	push   %eax
41f238:	ff 15 f0 11 45 00    	call   *0x4511f0
41f23e:	83 3d a4 05 45 00 00 	cmpl   $0x0,0x4505a4
41f245:	75 0b                	jne    0x41f252
41f247:	ff 15 ec 11 45 00    	call   *0x4511ec
41f24d:	a1 a0 05 45 00       	mov    0x4505a0,%eax
41f252:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
41f259:	8b 4d f0             	mov    -0x10(%ebp),%ecx
41f25c:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
41f263:	59                   	pop    %ecx
41f264:	5f                   	pop    %edi
41f265:	5e                   	pop    %esi
41f266:	5b                   	pop    %ebx
41f267:	c9                   	leave
41f268:	c3                   	ret
41f269:	8b ff                	mov    %edi,%edi
41f26b:	55                   	push   %ebp
41f26c:	8b ec                	mov    %esp,%ebp
41f26e:	56                   	push   %esi
41f26f:	8b 75 08             	mov    0x8(%ebp),%esi
41f272:	33 c0                	xor    %eax,%eax
41f274:	3b 75 0c             	cmp    0xc(%ebp),%esi
41f277:	73 1e                	jae    0x41f297
41f279:	57                   	push   %edi
41f27a:	85 c0                	test   %eax,%eax
41f27c:	75 18                	jne    0x41f296
41f27e:	8b 3e                	mov    (%esi),%edi
41f280:	85 ff                	test   %edi,%edi
41f282:	74 0a                	je     0x41f28e
41f284:	8b cf                	mov    %edi,%ecx
41f286:	ff 15 c4 12 45 00    	call   *0x4512c4
41f28c:	ff d7                	call   *%edi
41f28e:	83 c6 04             	add    $0x4,%esi
41f291:	3b 75 0c             	cmp    0xc(%ebp),%esi
41f294:	72 e4                	jb     0x41f27a
41f296:	5f                   	pop    %edi
41f297:	5e                   	pop    %esi
41f298:	5d                   	pop    %ebp
41f299:	c3                   	ret
41f29a:	b8 4d 5a 00 00       	mov    $0x5a4d,%eax
41f29f:	66 39 05 00 00 40 00 	cmp    %ax,0x400000
41f2a6:	75 55                	jne    0x41f2fd
41f2a8:	8b 0d 3c 00 40 00    	mov    0x40003c,%ecx
41f2ae:	81 b9 00 00 40 00 50 	cmpl   $0x4550,0x400000(%ecx)
41f2b5:	45 00 00
41f2b8:	75 43                	jne    0x41f2fd
41f2ba:	0f b7 81 18 00 40 00 	movzwl 0x400018(%ecx),%eax
41f2c1:	ba 0b 01 00 00       	mov    $0x10b,%edx
41f2c6:	66 3b c2             	cmp    %dx,%ax
41f2c9:	74 1f                	je     0x41f2ea
41f2cb:	ba 0b 02 00 00       	mov    $0x20b,%edx
41f2d0:	66 3b c2             	cmp    %dx,%ax
41f2d3:	75 28                	jne    0x41f2fd
41f2d5:	83 b9 84 00 40 00 0e 	cmpl   $0xe,0x400084(%ecx)
41f2dc:	76 1f                	jbe    0x41f2fd
41f2de:	33 c0                	xor    %eax,%eax
41f2e0:	39 81 f8 00 40 00    	cmp    %eax,0x4000f8(%ecx)
41f2e6:	0f 95 c0             	setne  %al
41f2e9:	c3                   	ret
41f2ea:	83 b9 74 00 40 00 0e 	cmpl   $0xe,0x400074(%ecx)
41f2f1:	76 0a                	jbe    0x41f2fd
41f2f3:	33 c0                	xor    %eax,%eax
41f2f5:	39 81 e8 00 40 00    	cmp    %eax,0x4000e8(%ecx)
41f2fb:	eb e9                	jmp    0x41f2e6
41f2fd:	33 c0                	xor    %eax,%eax
41f2ff:	c3                   	ret
41f300:	ff 25 44 12 45 00    	jmp    *0x451244
41f306:	cc                   	int3
41f307:	cc                   	int3
41f308:	cc                   	int3
41f309:	cc                   	int3
41f30a:	cc                   	int3
41f30b:	cc                   	int3
41f30c:	cc                   	int3
41f30d:	cc                   	int3
41f30e:	cc                   	int3
41f30f:	cc                   	int3
41f310:	3b 0d 54 02 45 00    	cmp    0x450254,%ecx
41f316:	75 03                	jne    0x41f31b
41f318:	c2 00 00             	ret    $0x0
41f31b:	e9 20 01 00 00       	jmp    0x41f440
41f320:	ff 25 34 12 45 00    	jmp    *0x451234
41f326:	cc                   	int3
41f327:	cc                   	int3
41f328:	cc                   	int3
41f329:	cc                   	int3
41f32a:	cc                   	int3
41f32b:	cc                   	int3
41f32c:	cc                   	int3
41f32d:	cc                   	int3
41f32e:	cc                   	int3
41f32f:	cc                   	int3
41f330:	8b ff                	mov    %edi,%edi
41f332:	55                   	push   %ebp
41f333:	8b ec                	mov    %esp,%ebp
41f335:	56                   	push   %esi
41f336:	8b f1                	mov    %ecx,%esi
41f338:	ff 15 dc 11 45 00    	call   *0x4511dc
41f33e:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
41f342:	74 07                	je     0x41f34b
41f344:	56                   	push   %esi
41f345:	e8 80 ce fe ff       	call   0x40c1ca
41f34a:	59                   	pop    %ecx
41f34b:	8b c6                	mov    %esi,%eax
41f34d:	5e                   	pop    %esi
41f34e:	5d                   	pop    %ebp
41f34f:	c2 04 00             	ret    $0x4
41f352:	6a 14                	push   $0x14
41f354:	68 e8 d0 44 00       	push   $0x44d0e8
41f359:	e8 3a 07 00 00       	call   0x41fa98
41f35e:	83 65 dc 00          	andl   $0x0,-0x24(%ebp)
41f362:	a1 3c 09 45 00       	mov    0x45093c,%eax
41f367:	89 45 e4             	mov    %eax,-0x1c(%ebp)
41f36a:	83 f8 ff             	cmp    $0xffffffff,%eax
41f36d:	75 16                	jne    0x41f385
41f36f:	ff 75 08             	push   0x8(%ebp)
41f372:	8b 35 18 12 45 00    	mov    0x451218,%esi
41f378:	8b ce                	mov    %esi,%ecx
41f37a:	ff 15 c4 12 45 00    	call   *0x4512c4
41f380:	ff d6                	call   *%esi
41f382:	59                   	pop    %ecx
41f383:	eb 54                	jmp    0x41f3d9
41f385:	6a 08                	push   $0x8
41f387:	e8 65 07 00 00       	call   0x41faf1
41f38c:	59                   	pop    %ecx
41f38d:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
41f391:	a1 3c 09 45 00       	mov    0x45093c,%eax
41f396:	89 45 e4             	mov    %eax,-0x1c(%ebp)
41f399:	a1 38 09 45 00       	mov    0x450938,%eax
41f39e:	89 45 e0             	mov    %eax,-0x20(%ebp)
41f3a1:	8d 45 e0             	lea    -0x20(%ebp),%eax
41f3a4:	50                   	push   %eax
41f3a5:	8d 45 e4             	lea    -0x1c(%ebp),%eax
41f3a8:	50                   	push   %eax
41f3a9:	ff 75 08             	push   0x8(%ebp)
41f3ac:	e8 4c 07 00 00       	call   0x41fafd
41f3b1:	83 c4 0c             	add    $0xc,%esp
41f3b4:	8b f0                	mov    %eax,%esi
41f3b6:	89 75 dc             	mov    %esi,-0x24(%ebp)
41f3b9:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
41f3bc:	89 0d 3c 09 45 00    	mov    %ecx,0x45093c
41f3c2:	8b 4d e0             	mov    -0x20(%ebp),%ecx
41f3c5:	89 0d 38 09 45 00    	mov    %ecx,0x450938
41f3cb:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
41f3d2:	e8 15 00 00 00       	call   0x41f3ec
41f3d7:	8b c6                	mov    %esi,%eax
41f3d9:	8b 4d f0             	mov    -0x10(%ebp),%ecx
41f3dc:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
41f3e3:	59                   	pop    %ecx
41f3e4:	5f                   	pop    %edi
41f3e5:	5e                   	pop    %esi
41f3e6:	5b                   	pop    %ebx
41f3e7:	c9                   	leave
41f3e8:	c3                   	ret
41f3e9:	8b 75 dc             	mov    -0x24(%ebp),%esi
41f3ec:	6a 08                	push   $0x8
41f3ee:	e8 04 07 00 00       	call   0x41faf7
41f3f3:	59                   	pop    %ecx
41f3f4:	c3                   	ret
41f3f5:	8b ff                	mov    %edi,%edi
41f3f7:	55                   	push   %ebp
41f3f8:	8b ec                	mov    %esp,%ebp
41f3fa:	ff 75 08             	push   0x8(%ebp)
41f3fd:	e8 50 ff ff ff       	call   0x41f352
41f402:	f7 d8                	neg    %eax
41f404:	59                   	pop    %ecx
41f405:	1b c0                	sbb    %eax,%eax
41f407:	f7 d8                	neg    %eax
41f409:	48                   	dec    %eax
41f40a:	5d                   	pop    %ebp
41f40b:	c3                   	ret
41f40c:	cc                   	int3
41f40d:	cc                   	int3
41f40e:	cc                   	int3
41f40f:	cc                   	int3
41f410:	ff 25 50 12 45 00    	jmp    *0x451250
41f416:	8b ff                	mov    %edi,%edi
41f418:	55                   	push   %ebp
41f419:	8b ec                	mov    %esp,%ebp
41f41b:	6a 00                	push   $0x0
41f41d:	ff 15 50 10 45 00    	call   *0x451050
41f423:	ff 75 08             	push   0x8(%ebp)
41f426:	ff 15 4c 10 45 00    	call   *0x45104c
41f42c:	68 09 04 00 c0       	push   $0xc0000409
41f431:	ff 15 e0 10 45 00    	call   *0x4510e0
41f437:	50                   	push   %eax
41f438:	ff 15 f8 10 45 00    	call   *0x4510f8
41f43e:	5d                   	pop    %ebp
41f43f:	c3                   	ret
41f440:	8b ff                	mov    %edi,%edi
41f442:	55                   	push   %ebp
41f443:	8b ec                	mov    %esp,%ebp
41f445:	81 ec 24 03 00 00    	sub    $0x324,%esp
41f44b:	a3 c0 06 45 00       	mov    %eax,0x4506c0
41f450:	89 0d bc 06 45 00    	mov    %ecx,0x4506bc
41f456:	89 15 b8 06 45 00    	mov    %edx,0x4506b8
41f45c:	89 1d b4 06 45 00    	mov    %ebx,0x4506b4
41f462:	89 35 b0 06 45 00    	mov    %esi,0x4506b0
41f468:	89 3d ac 06 45 00    	mov    %edi,0x4506ac
41f46e:	66 8c 15 d8 06 45 00 	data16 mov %ss,0x4506d8
41f475:	66 8c 0d cc 06 45 00 	data16 mov %cs,0x4506cc
41f47c:	66 8c 1d a8 06 45 00 	data16 mov %ds,0x4506a8
41f483:	66 8c 05 a4 06 45 00 	data16 mov %es,0x4506a4
41f48a:	66 8c 25 a0 06 45 00 	data16 mov %fs,0x4506a0
41f491:	66 8c 2d 9c 06 45 00 	data16 mov %gs,0x45069c
41f498:	9c                   	pushf
41f499:	8f 05 d0 06 45 00    	pop    0x4506d0
41f49f:	8b 45 00             	mov    0x0(%ebp),%eax
41f4a2:	a3 c4 06 45 00       	mov    %eax,0x4506c4
41f4a7:	8b 45 04             	mov    0x4(%ebp),%eax
41f4aa:	a3 c8 06 45 00       	mov    %eax,0x4506c8
41f4af:	8d 45 08             	lea    0x8(%ebp),%eax
41f4b2:	a3 d4 06 45 00       	mov    %eax,0x4506d4
41f4b7:	8b 85 dc fc ff ff    	mov    -0x324(%ebp),%eax
41f4bd:	c7 05 10 06 45 00 01 	movl   $0x10001,0x450610
41f4c4:	00 01 00
41f4c7:	a1 c8 06 45 00       	mov    0x4506c8,%eax
41f4cc:	a3 cc 05 45 00       	mov    %eax,0x4505cc
41f4d1:	c7 05 c0 05 45 00 09 	movl   $0xc0000409,0x4505c0
41f4d8:	04 00 c0
41f4db:	c7 05 c4 05 45 00 01 	movl   $0x1,0x4505c4
41f4e2:	00 00 00
41f4e5:	c7 05 d0 05 45 00 03 	movl   $0x3,0x4505d0
41f4ec:	00 00 00
41f4ef:	6a 04                	push   $0x4
41f4f1:	58                   	pop    %eax
41f4f2:	6b c0 00             	imul   $0x0,%eax,%eax
41f4f5:	c7 80 d4 05 45 00 02 	movl   $0x2,0x4505d4(%eax)
41f4fc:	00 00 00
41f4ff:	6a 04                	push   $0x4
41f501:	58                   	pop    %eax
41f502:	c1 e0 00             	shl    $0x0,%eax
41f505:	8b 0d 54 02 45 00    	mov    0x450254,%ecx
41f50b:	89 88 d4 05 45 00    	mov    %ecx,0x4505d4(%eax)
41f511:	6a 04                	push   $0x4
41f513:	58                   	pop    %eax
41f514:	d1 e0                	shl    $1,%eax
41f516:	8b 0d 58 02 45 00    	mov    0x450258,%ecx
41f51c:	89 88 d4 05 45 00    	mov    %ecx,0x4505d4(%eax)
41f522:	6a 04                	push   $0x4
41f524:	58                   	pop    %eax
41f525:	6b c0 00             	imul   $0x0,%eax,%eax
41f528:	8b 0d 54 02 45 00    	mov    0x450254,%ecx
41f52e:	89 4c 05 f8          	mov    %ecx,-0x8(%ebp,%eax,1)
41f532:	6a 04                	push   $0x4
41f534:	58                   	pop    %eax
41f535:	c1 e0 00             	shl    $0x0,%eax
41f538:	8b 0d 58 02 45 00    	mov    0x450258,%ecx
41f53e:	89 4c 05 f8          	mov    %ecx,-0x8(%ebp,%eax,1)
41f542:	68 dc 1f 40 00       	push   $0x401fdc
41f547:	e8 ca fe ff ff       	call   0x41f416
41f54c:	c9                   	leave
41f54d:	c3                   	ret
41f54e:	8b ff                	mov    %edi,%edi
41f550:	55                   	push   %ebp
41f551:	8b ec                	mov    %esp,%ebp
41f553:	a3 c0 06 45 00       	mov    %eax,0x4506c0
41f558:	89 0d bc 06 45 00    	mov    %ecx,0x4506bc
41f55e:	89 15 b8 06 45 00    	mov    %edx,0x4506b8
41f564:	89 1d b4 06 45 00    	mov    %ebx,0x4506b4