419296:	ba 78 5c 40 00       	mov    $0x405c78,%edx
41929b:	59                   	pop    %ecx
41929c:	8d 45 a0             	lea    -0x60(%ebp),%eax
41929f:	89 55 c0             	mov    %edx,-0x40(%ebp)
4192a2:	50                   	push   %eax
4192a3:	6a 05                	push   $0x5
4192a5:	53                   	push   %ebx
4192a6:	53                   	push   %ebx
4192a7:	68 e2 64 40 00       	push   $0x4064e2
4192ac:	68 10 00 42 00       	push   $0x420010
4192b1:	89 5d c4             	mov    %ebx,-0x3c(%ebp)
4192b4:	89 4d c8             	mov    %ecx,-0x38(%ebp)
4192b7:	89 5d cc             	mov    %ebx,-0x34(%ebp)
4192ba:	e8 f1 d5 fe ff       	call   0x4068b0
4192bf:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
4192c3:	8d 4d 08             	lea    0x8(%ebp),%ecx
4192c6:	ff 15 44 32 42 00    	call   *0x423244
4192cc:	e8 49 31 00 00       	call   0x41c41a
4192d1:	c2 04 00             	ret    $0x4
4192d4:	83 fa 02             	cmp    $0x2,%edx
4192d7:	7e 0e                	jle    0x4192e7
4192d9:	83 fa 03             	cmp    $0x3,%edx
4192dc:	74 04                	je     0x4192e2
4192de:	6a 57                	push   $0x57
4192e0:	58                   	pop    %eax
4192e1:	c3                   	ret
4192e2:	e9 79 04 00 00       	jmp    0x419760
4192e7:	8b c1                	mov    %ecx,%eax
4192e9:	99                   	cltd
4192ea:	52                   	push   %edx
4192eb:	50                   	push   %eax
4192ec:	e8 4e 00 00 00       	call   0x41933f
4192f1:	c3                   	ret
4192f2:	8b ff                	mov    %edi,%edi
4192f4:	56                   	push   %esi
4192f5:	85 c9                	test   %ecx,%ecx
4192f7:	74 36                	je     0x41932f
4192f9:	7e 2f                	jle    0x41932a
4192fb:	83 f9 02             	cmp    $0x2,%ecx
4192fe:	7e 1e                	jle    0x41931e
419300:	83 f9 03             	cmp    $0x3,%ecx
419303:	75 25                	jne    0x41932a
419305:	33 f6                	xor    %esi,%esi
419307:	b9 04 40 01 10       	mov    $0x10014004,%ecx
41930c:	56                   	push   %esi
41930d:	56                   	push   %esi
41930e:	e8 2a 05 00 00       	call   0x41983d
419313:	85 c0                	test   %eax,%eax
419315:	75 26                	jne    0x41933d
419317:	b9 08 40 01 10       	mov    $0x10014008,%ecx
41931c:	eb 18                	jmp    0x419336
41931e:	8b c1                	mov    %ecx,%eax
419320:	b9 00 40 01 10       	mov    $0x10014000,%ecx
419325:	99                   	cltd
419326:	52                   	push   %edx
419327:	50                   	push   %eax
419328:	eb 0e                	jmp    0x419338
41932a:	6a 57                	push   $0x57
41932c:	58                   	pop    %eax
41932d:	5e                   	pop    %esi
41932e:	c3                   	ret
41932f:	33 f6                	xor    %esi,%esi
419331:	b9 04 40 01 10       	mov    $0x10014004,%ecx
419336:	56                   	push   %esi
419337:	56                   	push   %esi
419338:	e8 00 05 00 00       	call   0x41983d
41933d:	5e                   	pop    %esi
41933e:	c3                   	ret
41933f:	8b ff                	mov    %edi,%edi
419341:	55                   	push   %ebp
419342:	8b ec                	mov    %esp,%ebp
419344:	83 ec 7c             	sub    $0x7c,%esp
419347:	a1 e4 05 42 00       	mov    0x4205e4,%eax
41934c:	33 c5                	xor    %ebp,%eax
41934e:	89 45 fc             	mov    %eax,-0x4(%ebp)
419351:	56                   	push   %esi
419352:	57                   	push   %edi
419353:	6a 1c                	push   $0x1c
419355:	59                   	pop    %ecx
419356:	be e8 5c 40 00       	mov    $0x405ce8,%esi
41935b:	8d 7d 88             	lea    -0x78(%ebp),%edi
41935e:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
419360:	8d 45 88             	lea    -0x78(%ebp),%eax
419363:	66 a5                	movsw  %ds:(%esi),%es:(%edi)
419365:	33 f6                	xor    %esi,%esi
419367:	bf 48 1f 42 00       	mov    $0x421f48,%edi
41936c:	56                   	push   %esi
41936d:	68 08 02 00 00       	push   $0x208
419372:	57                   	push   %edi
419373:	56                   	push   %esi
419374:	50                   	push   %eax
419375:	56                   	push   %esi
419376:	68 5c 5d 40 00       	push   $0x405d5c
41937b:	ff 15 c4 35 42 00    	call   *0x4235c4
419381:	85 c0                	test   %eax,%eax
419383:	78 2d                	js     0x4193b2
419385:	8b cf                	mov    %edi,%ecx
419387:	8d 51 02             	lea    0x2(%ecx),%edx
41938a:	66 8b 01             	mov    (%ecx),%ax
41938d:	83 c1 02             	add    $0x2,%ecx
419390:	66 3b c6             	cmp    %si,%ax
419393:	75 f5                	jne    0x41938a
419395:	2b ca                	sub    %edx,%ecx
419397:	ba 04 01 00 00       	mov    $0x104,%edx
41939c:	d1 f9                	sar    $1,%ecx
41939e:	8b c2                	mov    %edx,%eax
4193a0:	2b c1                	sub    %ecx,%eax
4193a2:	50                   	push   %eax
4193a3:	68 84 5d 40 00       	push   $0x405d84
4193a8:	52                   	push   %edx
4193a9:	57                   	push   %edi
4193aa:	ff 15 88 35 42 00    	call   *0x423588
4193b0:	eb 14                	jmp    0x4193c6
4193b2:	8d 45 88             	lea    -0x78(%ebp),%eax
4193b5:	50                   	push   %eax
4193b6:	68 98 5d 40 00       	push   $0x405d98
4193bb:	68 04 01 00 00       	push   $0x104
4193c0:	57                   	push   %edi
4193c1:	e8 7d d9 fe ff       	call   0x406d43
4193c6:	83 c4 10             	add    $0x10,%esp
4193c9:	8d 45 84             	lea    -0x7c(%ebp),%eax
4193cc:	56                   	push   %esi
4193cd:	50                   	push   %eax
4193ce:	56                   	push   %esi
4193cf:	68 3f 00 0f 00       	push   $0xf003f
4193d4:	56                   	push   %esi
4193d5:	56                   	push   %esi
4193d6:	56                   	push   %esi
4193d7:	57                   	push   %edi
4193d8:	68 02 00 00 80       	push   $0x80000002
4193dd:	ff 15 1c 30 42 00    	call   *0x42301c
4193e3:	85 c0                	test   %eax,%eax
4193e5:	75 24                	jne    0x41940b
4193e7:	6a 08                	push   $0x8
4193e9:	8d 45 08             	lea    0x8(%ebp),%eax
4193ec:	50                   	push   %eax
4193ed:	6a 0b                	push   $0xb
4193ef:	56                   	push   %esi
4193f0:	68 cc 5c 40 00       	push   $0x405ccc
4193f5:	ff 75 84             	push   -0x7c(%ebp)
4193f8:	ff 15 10 30 42 00    	call   *0x423010
4193fe:	ff 75 84             	push   -0x7c(%ebp)
419401:	8b f0                	mov    %eax,%esi
419403:	ff 15 0c 30 42 00    	call   *0x42300c
419409:	8b c6                	mov    %esi,%eax
41940b:	8b 4d fc             	mov    -0x4(%ebp),%ecx
41940e:	5f                   	pop    %edi
41940f:	33 cd                	xor    %ebp,%ecx
419411:	5e                   	pop    %esi
419412:	e8 09 22 00 00       	call   0x41b620
419417:	c9                   	leave
419418:	c2 08 00             	ret    $0x8
41941b:	8b ff                	mov    %edi,%edi
41941d:	55                   	push   %ebp
41941e:	8b ec                	mov    %esp,%ebp
419420:	51                   	push   %ecx
419421:	53                   	push   %ebx
419422:	56                   	push   %esi
419423:	57                   	push   %edi
419424:	8b 7d 08             	mov    0x8(%ebp),%edi
419427:	8b c1                	mov    %ecx,%eax
419429:	33 f6                	xor    %esi,%esi
41942b:	89 45 fc             	mov    %eax,-0x4(%ebp)
41942e:	8b da                	mov    %edx,%ebx
419430:	21 37                	and    %esi,(%edi)
419432:	57                   	push   %edi
419433:	56                   	push   %esi
419434:	6a 00                	push   $0x0
419436:	6a 00                	push   $0x0
419438:	68 b4 5d 40 00       	push   $0x405db4
41943d:	50                   	push   %eax
41943e:	ff 15 14 30 42 00    	call   *0x423014
419444:	89 03                	mov    %eax,(%ebx)
419446:	85 c0                	test   %eax,%eax
419448:	75 0c                	jne    0x419456
41944a:	85 f6                	test   %esi,%esi
41944c:	75 04                	jne    0x419452
41944e:	39 37                	cmp    %esi,(%edi)
419450:	77 17                	ja     0x419469
419452:	8b c6                	mov    %esi,%eax
419454:	eb 40                	jmp    0x419496
419456:	3d ea 00 00 00       	cmp    $0xea,%eax
41945b:	75 28                	jne    0x419485
41945d:	85 f6                	test   %esi,%esi
41945f:	74 08                	je     0x419469
419461:	56                   	push   %esi
419462:	ff 15 3c 35 42 00    	call   *0x42353c
419468:	59                   	pop    %ecx
419469:	ff 37                	push   (%edi)
41946b:	ff 15 40 35 42 00    	call   *0x423540
419471:	8b f0                	mov    %eax,%esi
419473:	59                   	pop    %ecx
419474:	85 f6                	test   %esi,%esi
419476:	74 05                	je     0x41947d
419478:	8b 45 fc             	mov    -0x4(%ebp),%eax
41947b:	eb b5                	jmp    0x419432
41947d:	c7 03 0e 00 00 00    	movl   $0xe,(%ebx)
419483:	eb 0c                	jmp    0x419491
419485:	85 f6                	test   %esi,%esi
419487:	74 08                	je     0x419491
419489:	56                   	push   %esi
41948a:	ff 15 3c 35 42 00    	call   *0x42353c
419490:	59                   	pop    %ecx
419491:	83 27 00             	andl   $0x0,(%edi)
419494:	33 c0                	xor    %eax,%eax
419496:	5f                   	pop    %edi
419497:	5e                   	pop    %esi
419498:	5b                   	pop    %ebx
419499:	c9                   	leave
41949a:	c2 04 00             	ret    $0x4
41949d:	8b ff                	mov    %edi,%edi
41949f:	55                   	push   %ebp
4194a0:	8b ec                	mov    %esp,%ebp
4194a2:	81 ec f4 00 00 00    	sub    $0xf4,%esp
4194a8:	a1 e4 05 42 00       	mov    0x4205e4,%eax
4194ad:	33 c5                	xor    %ebp,%eax
4194af:	89 45 fc             	mov    %eax,-0x4(%ebp)
4194b2:	53                   	push   %ebx
4194b3:	56                   	push   %esi
4194b4:	57                   	push   %edi
4194b5:	6a 1c                	push   $0x1c
4194b7:	59                   	pop    %ecx
4194b8:	be e8 5c 40 00       	mov    $0x405ce8,%esi
4194bd:	8d bd 28 ff ff ff    	lea    -0xd8(%ebp),%edi
4194c3:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
4194c5:	33 db                	xor    %ebx,%ebx
4194c7:	8d 85 28 ff ff ff    	lea    -0xd8(%ebp),%eax
4194cd:	53                   	push   %ebx
4194ce:	68 08 02 00 00       	push   $0x208
4194d3:	66 a5                	movsw  %ds:(%esi),%es:(%edi)
4194d5:	be 48 1f 42 00       	mov    $0x421f48,%esi
4194da:	56                   	push   %esi
4194db:	53                   	push   %ebx
4194dc:	50                   	push   %eax
4194dd:	53                   	push   %ebx
4194de:	68 5c 5d 40 00       	push   $0x405d5c
4194e3:	ff 15 c4 35 42 00    	call   *0x4235c4
4194e9:	85 c0                	test   %eax,%eax
4194eb:	78 2d                	js     0x41951a
4194ed:	8b ce                	mov    %esi,%ecx
4194ef:	8d 51 02             	lea    0x2(%ecx),%edx
4194f2:	66 8b 01             	mov    (%ecx),%ax
4194f5:	83 c1 02             	add    $0x2,%ecx
4194f8:	66 3b c3             	cmp    %bx,%ax
4194fb:	75 f5                	jne    0x4194f2
4194fd:	2b ca                	sub    %edx,%ecx
4194ff:	ba 04 01 00 00       	mov    $0x104,%edx
419504:	d1 f9                	sar    $1,%ecx
419506:	8b c2                	mov    %edx,%eax
419508:	2b c1                	sub    %ecx,%eax
41950a:	50                   	push   %eax
41950b:	68 84 5d 40 00       	push   $0x405d84
419510:	52                   	push   %edx
419511:	56                   	push   %esi
419512:	ff 15 88 35 42 00    	call   *0x423588
419518:	eb 17                	jmp    0x419531
41951a:	8d 85 28 ff ff ff    	lea    -0xd8(%ebp),%eax
419520:	50                   	push   %eax
419521:	68 98 5d 40 00       	push   $0x405d98
419526:	68 04 01 00 00       	push   $0x104
41952b:	56                   	push   %esi
41952c:	e8 12 d8 fe ff       	call   0x406d43
419531:	83 c4 10             	add    $0x10,%esp
419534:	8d 85 20 ff ff ff    	lea    -0xe0(%ebp),%eax
41953a:	53                   	push   %ebx
41953b:	50                   	push   %eax
41953c:	53                   	push   %ebx
41953d:	68 3f 00 0f 00       	push   $0xf003f
419542:	53                   	push   %ebx
419543:	53                   	push   %ebx
419544:	53                   	push   %ebx
419545:	56                   	push   %esi
419546:	68 02 00 00 80       	push   $0x80000002
41954b:	ff 15 1c 30 42 00    	call   *0x42301c
419551:	85 c0                	test   %eax,%eax
419553:	0f 85 f0 01 00 00    	jne    0x419749
419559:	ff 75 0c             	push   0xc(%ebp)
41955c:	8d 45 9c             	lea    -0x64(%ebp),%eax
41955f:	ff 75 08             	push   0x8(%ebp)
419562:	68 d4 5d 40 00       	push   $0x405dd4
419567:	6a 30                	push   $0x30
419569:	50                   	push   %eax
41956a:	e8 d4 d7 fe ff       	call   0x406d43
41956f:	83 c4 14             	add    $0x14,%esp
419572:	89 85 14 ff ff ff    	mov    %eax,-0xec(%ebp)
419578:	85 c0                	test   %eax,%eax
41957a:	0f 85 c9 01 00 00    	jne    0x419749
419580:	8d 4d 9c             	lea    -0x64(%ebp),%ecx
419583:	8d 51 02             	lea    0x2(%ecx),%edx
419586:	66 8b 01             	mov    (%ecx),%ax
419589:	83 c1 02             	add    $0x2,%ecx
41958c:	66 3b c3             	cmp    %bx,%ax
41958f:	75 f5                	jne    0x419586
419591:	2b ca                	sub    %edx,%ecx
419593:	d1 f9                	sar    $1,%ecx
419595:	8d 79 01             	lea    0x1(%ecx),%edi
419598:	83 ff 30             	cmp    $0x30,%edi
41959b:	73 14                	jae    0x4195b1
41959d:	8d 04 3f             	lea    (%edi,%edi,1),%eax
4195a0:	47                   	inc    %edi
4195a1:	83 f8 60             	cmp    $0x60,%eax
4195a4:	0f 83 b0 01 00 00    	jae    0x41975a
4195aa:	33 c9                	xor    %ecx,%ecx
4195ac:	66 89 4c 05 9c       	mov    %cx,-0x64(%ebp,%eax,1)
4195b1:	8b 8d 20 ff ff ff    	mov    -0xe0(%ebp),%ecx
4195b7:	8d 85 1c ff ff ff    	lea    -0xe4(%ebp),%eax
4195bd:	50                   	push   %eax
4195be:	8d 95 14 ff ff ff    	lea    -0xec(%ebp),%edx
4195c4:	e8 52 fe ff ff       	call   0x41941b
4195c9:	8b f0                	mov    %eax,%esi
4195cb:	89 b5 0c ff ff ff    	mov    %esi,-0xf4(%ebp)
4195d1:	85 f6                	test   %esi,%esi
4195d3:	75 36                	jne    0x41960b
4195d5:	8b b5 14 ff ff ff    	mov    -0xec(%ebp),%esi
4195db:	85 f6                	test   %esi,%esi
4195dd:	74 09                	je     0x4195e8
4195df:	83 fe 02             	cmp    $0x2,%esi
4195e2:	0f 85 53 01 00 00    	jne    0x41973b
4195e8:	8d 04 3f             	lea    (%edi,%edi,1),%eax
4195eb:	50                   	push   %eax
4195ec:	8d 45 9c             	lea    -0x64(%ebp),%eax
4195ef:	50                   	push   %eax
4195f0:	6a 07                	push   $0x7
4195f2:	53                   	push   %ebx
4195f3:	68 b4 5d 40 00       	push   $0x405db4
4195f8:	ff b5 20 ff ff ff    	push   -0xe0(%ebp)
4195fe:	ff 15 10 30 42 00    	call   *0x423010
419604:	8b f0                	mov    %eax,%esi
419606:	e9 30 01 00 00       	jmp    0x41973b
41960b:	8b 85 1c ff ff ff    	mov    -0xe4(%ebp),%eax
419611:	8d 0c 3f             	lea    (%edi,%edi,1),%ecx
419614:	03 c1                	add    %ecx,%eax
419616:	50                   	push   %eax
419617:	ff 15 40 35 42 00    	call   *0x423540
41961d:	8b d8                	mov    %eax,%ebx
41961f:	89 9d 24 ff ff ff    	mov    %ebx,-0xdc(%ebp)
419625:	59                   	pop    %ecx
419626:	85 db                	test   %ebx,%ebx
419628:	0f 84 fd 00 00 00    	je     0x41972b
41962e:	ff b5 1c ff ff ff    	push   -0xe4(%ebp)
419634:	56                   	push   %esi
419635:	53                   	push   %ebx
419636:	e8 e0 2f 00 00       	call   0x41c61b
41963b:	8b 85 1c ff ff ff    	mov    -0xe4(%ebp),%eax
419641:	33 f6                	xor    %esi,%esi
419643:	83 c4 0c             	add    $0xc,%esp
419646:	89 b5 18 ff ff ff    	mov    %esi,-0xe8(%ebp)
41964c:	d1 e8                	shr    $1,%eax
41964e:	89 85 10 ff ff ff    	mov    %eax,-0xf0(%ebp)
419654:	75 1b                	jne    0x419671