4143cb:	e9 d7 02 00 00       	jmp    0x4146a7
4143d0:	e8 bd 80 ff ff       	call   0x40c492
4143d5:	8b 5d 0c             	mov    0xc(%ebp),%ebx
4143d8:	89 03                	mov    %eax,(%ebx)
4143da:	3b c6                	cmp    %esi,%eax
4143dc:	75 17                	jne    0x4143f5
4143de:	e8 11 39 ff ff       	call   0x407cf4
4143e3:	83 20 00             	andl   $0x0,(%eax)
4143e6:	89 33                	mov    %esi,(%ebx)
4143e8:	e8 1a 39 ff ff       	call   0x407d07
4143ed:	c7 00 18 00 00 00    	movl   $0x18,(%eax)
4143f3:	eb cf                	jmp    0x4143c4
4143f5:	8b 45 08             	mov    0x8(%ebp),%eax
4143f8:	8d 75 d4             	lea    -0x2c(%ebp),%esi
4143fb:	83 65 f0 00          	andl   $0x0,-0x10(%ebp)
4143ff:	33 c9                	xor    %ecx,%ecx
414401:	41                   	inc    %ecx
414402:	c7 45 ec 0c 00 00 00 	movl   $0xc,-0x14(%ebp)
414409:	83 ec 18             	sub    $0x18,%esp
41440c:	89 08                	mov    %ecx,(%eax)
41440e:	8b 45 14             	mov    0x14(%ebp),%eax
414411:	c1 e8 07             	shr    $0x7,%eax
414414:	f7 d0                	not    %eax
414416:	23 c1                	and    %ecx,%eax
414418:	6a 06                	push   $0x6
41441a:	59                   	pop    %ecx
41441b:	89 45 f4             	mov    %eax,-0xc(%ebp)
41441e:	8b fc                	mov    %esp,%edi
414420:	8d 45 ec             	lea    -0x14(%ebp),%eax
414423:	50                   	push   %eax
414424:	ff 75 10             	push   0x10(%ebp)
414427:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
414429:	e8 96 fc ff ff       	call   0x4140c4
41442e:	8b f8                	mov    %eax,%edi
414430:	83 c4 20             	add    $0x20,%esp
414433:	89 7d f8             	mov    %edi,-0x8(%ebp)
414436:	ba 00 00 00 c0       	mov    $0xc0000000,%edx
41443b:	83 ff ff             	cmp    $0xffffffff,%edi
41443e:	75 6b                	jne    0x4144ab
414440:	8b 4d d8             	mov    -0x28(%ebp),%ecx
414443:	8b c1                	mov    %ecx,%eax
414445:	23 c2                	and    %edx,%eax
414447:	3b c2                	cmp    %edx,%eax
414449:	75 35                	jne    0x414480
41444b:	f6 45 14 01          	testb  $0x1,0x14(%ebp)
41444f:	74 2f                	je     0x414480
414451:	83 ec 18             	sub    $0x18,%esp
414454:	8d 45 ec             	lea    -0x14(%ebp),%eax
414457:	81 e1 ff ff ff 7f    	and    $0x7fffffff,%ecx
41445d:	8d 75 d4             	lea    -0x2c(%ebp),%esi
414460:	89 4d d8             	mov    %ecx,-0x28(%ebp)
414463:	6a 06                	push   $0x6
414465:	59                   	pop    %ecx
414466:	8b fc                	mov    %esp,%edi
414468:	50                   	push   %eax
414469:	ff 75 10             	push   0x10(%ebp)
41446c:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
41446e:	e8 51 fc ff ff       	call   0x4140c4
414473:	8b f8                	mov    %eax,%edi
414475:	83 c4 20             	add    $0x20,%esp
414478:	89 7d f8             	mov    %edi,-0x8(%ebp)
41447b:	83 ff ff             	cmp    $0xffffffff,%edi
41447e:	75 2b                	jne    0x4144ab
414480:	8b 0b                	mov    (%ebx),%ecx
414482:	8b c1                	mov    %ecx,%eax
414484:	83 e1 3f             	and    $0x3f,%ecx
414487:	c1 f8 06             	sar    $0x6,%eax
41448a:	6b c9 30             	imul   $0x30,%ecx,%ecx
41448d:	8b 04 85 c0 41 42 00 	mov    0x4241c0(,%eax,4),%eax
414494:	80 64 08 28 fe       	andb   $0xfe,0x28(%eax,%ecx,1)
414499:	ff 15 48 b0 41 00    	call   *0x41b048
41449f:	50                   	push   %eax
4144a0:	e8 2c 38 ff ff       	call   0x407cd1
4144a5:	59                   	pop    %ecx
4144a6:	e9 19 ff ff ff       	jmp    0x4143c4
4144ab:	57                   	push   %edi
4144ac:	ff 15 14 b1 41 00    	call   *0x41b114
4144b2:	85 c0                	test   %eax,%eax
4144b4:	75 47                	jne    0x4144fd
4144b6:	ff 15 48 b0 41 00    	call   *0x41b048
4144bc:	8b f0                	mov    %eax,%esi
4144be:	56                   	push   %esi
4144bf:	e8 0d 38 ff ff       	call   0x407cd1
4144c4:	59                   	pop    %ecx
4144c5:	8b 0b                	mov    (%ebx),%ecx
4144c7:	8b c1                	mov    %ecx,%eax
4144c9:	83 e1 3f             	and    $0x3f,%ecx
4144cc:	c1 f8 06             	sar    $0x6,%eax
4144cf:	6b c9 30             	imul   $0x30,%ecx,%ecx
4144d2:	57                   	push   %edi
4144d3:	8b 04 85 c0 41 42 00 	mov    0x4241c0(,%eax,4),%eax
4144da:	80 64 08 28 fe       	andb   $0xfe,0x28(%eax,%ecx,1)
4144df:	ff 15 8c b0 41 00    	call   *0x41b08c
4144e5:	85 f6                	test   %esi,%esi
4144e7:	0f 85 d7 fe ff ff    	jne    0x4143c4
4144ed:	e8 15 38 ff ff       	call   0x407d07
4144f2:	c7 00 0d 00 00 00    	movl   $0xd,(%eax)
4144f8:	e9 c7 fe ff ff       	jmp    0x4143c4
4144fd:	83 f8 02             	cmp    $0x2,%eax
414500:	75 07                	jne    0x414509
414502:	8a 45 d4             	mov    -0x2c(%ebp),%al
414505:	0c 40                	or     $0x40,%al
414507:	eb 0a                	jmp    0x414513
414509:	83 f8 03             	cmp    $0x3,%eax
41450c:	8a 45 d4             	mov    -0x2c(%ebp),%al
41450f:	75 02                	jne    0x414513
414511:	0c 08                	or     $0x8,%al
414513:	57                   	push   %edi
414514:	ff 33                	push   (%ebx)
414516:	88 45 ff             	mov    %al,-0x1(%ebp)
414519:	e8 bd 7e ff ff       	call   0x40c3db
41451e:	8a 55 ff             	mov    -0x1(%ebp),%dl
414521:	59                   	pop    %ecx
414522:	59                   	pop    %ecx
414523:	8b 0b                	mov    (%ebx),%ecx
414525:	80 ca 01             	or     $0x1,%dl
414528:	8b c1                	mov    %ecx,%eax
41452a:	88 55 ff             	mov    %dl,-0x1(%ebp)
41452d:	83 e1 3f             	and    $0x3f,%ecx
414530:	c1 f8 06             	sar    $0x6,%eax
414533:	6b c9 30             	imul   $0x30,%ecx,%ecx
414536:	88 55 d4             	mov    %dl,-0x2c(%ebp)
414539:	8b 04 85 c0 41 42 00 	mov    0x4241c0(,%eax,4),%eax
414540:	88 54 08 28          	mov    %dl,0x28(%eax,%ecx,1)
414544:	8b 0b                	mov    (%ebx),%ecx
414546:	8b c1                	mov    %ecx,%eax
414548:	83 e1 3f             	and    $0x3f,%ecx
41454b:	c1 f8 06             	sar    $0x6,%eax
41454e:	6b c9 30             	imul   $0x30,%ecx,%ecx
414551:	f6 45 14 02          	testb  $0x2,0x14(%ebp)
414555:	8b 04 85 c0 41 42 00 	mov    0x4241c0(,%eax,4),%eax
41455c:	c6 44 08 29 00       	movb   $0x0,0x29(%eax,%ecx,1)
414561:	74 0e                	je     0x414571
414563:	ff 33                	push   (%ebx)
414565:	e8 6b fd ff ff       	call   0x4142d5
41456a:	8b f0                	mov    %eax,%esi
41456c:	59                   	pop    %ecx
41456d:	85 f6                	test   %esi,%esi
41456f:	75 28                	jne    0x414599
414571:	8d 45 fe             	lea    -0x2(%ebp),%eax
414574:	c6 45 fe 00          	movb   $0x0,-0x2(%ebp)
414578:	50                   	push   %eax
414579:	ff 75 14             	push   0x14(%ebp)
41457c:	8d 75 d4             	lea    -0x2c(%ebp),%esi
41457f:	83 ec 18             	sub    $0x18,%esp
414582:	6a 06                	push   $0x6
414584:	59                   	pop    %ecx
414585:	8b fc                	mov    %esp,%edi
414587:	ff 33                	push   (%ebx)
414589:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
41458b:	e8 e7 f8 ff ff       	call   0x413e77
414590:	83 c4 24             	add    $0x24,%esp
414593:	85 c0                	test   %eax,%eax
414595:	74 11                	je     0x4145a8
414597:	8b f0                	mov    %eax,%esi
414599:	ff 33                	push   (%ebx)
41459b:	e8 ac 94 ff ff       	call   0x40da4c
4145a0:	59                   	pop    %ecx
4145a1:	8b c6                	mov    %esi,%eax
4145a3:	e9 ff 00 00 00       	jmp    0x4146a7
4145a8:	8b 03                	mov    (%ebx),%eax
4145aa:	8b c8                	mov    %eax,%ecx
4145ac:	83 e0 3f             	and    $0x3f,%eax
4145af:	c1 f9 06             	sar    $0x6,%ecx
4145b2:	6b d0 30             	imul   $0x30,%eax,%edx
4145b5:	8a 45 fe             	mov    -0x2(%ebp),%al
4145b8:	8b 0c 8d c0 41 42 00 	mov    0x4241c0(,%ecx,4),%ecx
4145bf:	88 44 11 29          	mov    %al,0x29(%ecx,%edx,1)
4145c3:	8b 0b                	mov    (%ebx),%ecx
4145c5:	8b c1                	mov    %ecx,%eax
4145c7:	c1 f8 06             	sar    $0x6,%eax
4145ca:	83 e1 3f             	and    $0x3f,%ecx
4145cd:	6b d1 30             	imul   $0x30,%ecx,%edx
4145d0:	8b 0c 85 c0 41 42 00 	mov    0x4241c0(,%eax,4),%ecx
4145d7:	8b 45 14             	mov    0x14(%ebp),%eax
4145da:	c1 e8 10             	shr    $0x10,%eax
4145dd:	32 44 11 2d          	xor    0x2d(%ecx,%edx,1),%al
4145e1:	24 01                	and    $0x1,%al
4145e3:	30 44 11 2d          	xor    %al,0x2d(%ecx,%edx,1)
4145e7:	f6 45 ff 48          	testb  $0x48,-0x1(%ebp)
4145eb:	75 1f                	jne    0x41460c
4145ed:	f6 45 14 08          	testb  $0x8,0x14(%ebp)
4145f1:	74 19                	je     0x41460c
4145f3:	8b 0b                	mov    (%ebx),%ecx
4145f5:	8b c1                	mov    %ecx,%eax
4145f7:	83 e1 3f             	and    $0x3f,%ecx
4145fa:	c1 f8 06             	sar    $0x6,%eax
4145fd:	6b c9 30             	imul   $0x30,%ecx,%ecx
414600:	8b 04 85 c0 41 42 00 	mov    0x4241c0(,%eax,4),%eax
414607:	80 4c 08 28 20       	orb    $0x20,0x28(%eax,%ecx,1)
41460c:	8b 75 d8             	mov    -0x28(%ebp),%esi
41460f:	b9 00 00 00 c0       	mov    $0xc0000000,%ecx
414614:	8b c6                	mov    %esi,%eax
414616:	23 c1                	and    %ecx,%eax
414618:	3b c1                	cmp    %ecx,%eax
41461a:	0f 85 85 00 00 00    	jne    0x4146a5
414620:	f6 45 14 01          	testb  $0x1,0x14(%ebp)
414624:	74 7f                	je     0x4146a5
414626:	ff 75 f8             	push   -0x8(%ebp)
414629:	ff 15 8c b0 41 00    	call   *0x41b08c
41462f:	83 ec 18             	sub    $0x18,%esp
414632:	8d 45 ec             	lea    -0x14(%ebp),%eax
414635:	81 e6 ff ff ff 7f    	and    $0x7fffffff,%esi
41463b:	89 75 d8             	mov    %esi,-0x28(%ebp)
41463e:	8d 75 d4             	lea    -0x2c(%ebp),%esi
414641:	6a 06                	push   $0x6
414643:	59                   	pop    %ecx
414644:	8b fc                	mov    %esp,%edi
414646:	50                   	push   %eax
414647:	ff 75 10             	push   0x10(%ebp)
41464a:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
41464c:	e8 73 fa ff ff       	call   0x4140c4
414651:	8b d0                	mov    %eax,%edx
414653:	83 c4 20             	add    $0x20,%esp
414656:	83 fa ff             	cmp    $0xffffffff,%edx
414659:	75 32                	jne    0x41468d
41465b:	ff 15 48 b0 41 00    	call   *0x41b048
414661:	50                   	push   %eax
414662:	e8 6a 36 ff ff       	call   0x407cd1
414667:	8b 0b                	mov    (%ebx),%ecx
414669:	8b c1                	mov    %ecx,%eax
41466b:	83 e1 3f             	and    $0x3f,%ecx
41466e:	c1 f8 06             	sar    $0x6,%eax
414671:	6b c9 30             	imul   $0x30,%ecx,%ecx
414674:	8b 04 85 c0 41 42 00 	mov    0x4241c0(,%eax,4),%eax
41467b:	80 64 08 28 fe       	andb   $0xfe,0x28(%eax,%ecx,1)
414680:	ff 33                	push   (%ebx)
414682:	e8 1d 7f ff ff       	call   0x40c5a4
414687:	59                   	pop    %ecx
414688:	e9 18 fe ff ff       	jmp    0x4144a5
41468d:	8b 0b                	mov    (%ebx),%ecx
41468f:	8b c1                	mov    %ecx,%eax
414691:	c1 f8 06             	sar    $0x6,%eax
414694:	83 e1 3f             	and    $0x3f,%ecx
414697:	6b c9 30             	imul   $0x30,%ecx,%ecx
41469a:	8b 04 85 c0 41 42 00 	mov    0x4241c0(,%eax,4),%eax
4146a1:	89 54 08 18          	mov    %edx,0x18(%eax,%ecx,1)
4146a5:	33 c0                	xor    %eax,%eax
4146a7:	5f                   	pop    %edi
4146a8:	5e                   	pop    %esi
4146a9:	5b                   	pop    %ebx
4146aa:	8b e5                	mov    %ebp,%esp
4146ac:	5d                   	pop    %ebp
4146ad:	c3                   	ret
4146ae:	8b ff                	mov    %edi,%edi
4146b0:	55                   	push   %ebp
4146b1:	8b ec                	mov    %esp,%ebp
4146b3:	6a 01                	push   $0x1
4146b5:	ff 75 08             	push   0x8(%ebp)
4146b8:	ff 75 18             	push   0x18(%ebp)
4146bb:	ff 75 14             	push   0x14(%ebp)
4146be:	ff 75 10             	push   0x10(%ebp)
4146c1:	ff 75 0c             	push   0xc(%ebp)
4146c4:	e8 e2 f6 ff ff       	call   0x413dab
4146c9:	83 c4 18             	add    $0x18,%esp
4146cc:	5d                   	pop    %ebp
4146cd:	c3                   	ret
4146ce:	6a 0c                	push   $0xc
4146d0:	68 68 1f 42 00       	push   $0x421f68
4146d5:	e8 76 f4 fe ff       	call   0x403b50
4146da:	33 f6                	xor    %esi,%esi
4146dc:	89 75 e4             	mov    %esi,-0x1c(%ebp)
4146df:	8b 45 08             	mov    0x8(%ebp),%eax
4146e2:	ff 30                	push   (%eax)
4146e4:	e8 cf 7c ff ff       	call   0x40c3b8
4146e9:	59                   	pop    %ecx
4146ea:	89 75 fc             	mov    %esi,-0x4(%ebp)
4146ed:	8b 45 0c             	mov    0xc(%ebp),%eax
4146f0:	8b 00                	mov    (%eax),%eax
4146f2:	8b 38                	mov    (%eax),%edi
4146f4:	8b d7                	mov    %edi,%edx
4146f6:	c1 fa 06             	sar    $0x6,%edx
4146f9:	8b c7                	mov    %edi,%eax
4146fb:	83 e0 3f             	and    $0x3f,%eax
4146fe:	6b c8 30             	imul   $0x30,%eax,%ecx
414701:	8b 04 95 c0 41 42 00 	mov    0x4241c0(,%edx,4),%eax
414708:	f6 44 08 28 01       	testb  $0x1,0x28(%eax,%ecx,1)
41470d:	74 21                	je     0x414730
41470f:	57                   	push   %edi
414710:	e8 20 7f ff ff       	call   0x40c635
414715:	59                   	pop    %ecx
414716:	50                   	push   %eax
414717:	ff 15 e8 b0 41 00    	call   *0x41b0e8
41471d:	85 c0                	test   %eax,%eax
41471f:	75 1d                	jne    0x41473e
414721:	e8 ce 35 ff ff       	call   0x407cf4
414726:	8b f0                	mov    %eax,%esi
414728:	ff 15 48 b0 41 00    	call   *0x41b048
41472e:	89 06                	mov    %eax,(%esi)
414730:	e8 d2 35 ff ff       	call   0x407d07
414735:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
41473b:	83 ce ff             	or     $0xffffffff,%esi
41473e:	89 75 e4             	mov    %esi,-0x1c(%ebp)
414741:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
414748:	e8 0d 00 00 00       	call   0x41475a
41474d:	8b c6                	mov    %esi,%eax
41474f:	e8 42 f4 fe ff       	call   0x403b96
414754:	c2 0c 00             	ret    $0xc
414757:	8b 75 e4             	mov    -0x1c(%ebp),%esi
41475a:	8b 4d 10             	mov    0x10(%ebp),%ecx
41475d:	ff 31                	push   (%ecx)
41475f:	e8 0b 7d ff ff       	call   0x40c46f
414764:	59                   	pop    %ecx
414765:	c3                   	ret
414766:	8b ff                	mov    %edi,%edi
414768:	55                   	push   %ebp
414769:	8b ec                	mov    %esp,%ebp
41476b:	83 ec 0c             	sub    $0xc,%esp
41476e:	8b 45 08             	mov    0x8(%ebp),%eax
414771:	8d 4d ff             	lea    -0x1(%ebp),%ecx
414774:	89 45 f8             	mov    %eax,-0x8(%ebp)
414777:	89 45 f4             	mov    %eax,-0xc(%ebp)
41477a:	8d 45 f8             	lea    -0x8(%ebp),%eax
41477d:	50                   	push   %eax
41477e:	ff 75 0c             	push   0xc(%ebp)
414781:	8d 45 f4             	lea    -0xc(%ebp),%eax
414784:	50                   	push   %eax
414785:	e8 44 ff ff ff       	call   0x4146ce
41478a:	8b e5                	mov    %ebp,%esp
41478c:	5d                   	pop    %ebp
41478d:	c3                   	ret
41478e:	8b ff                	mov    %edi,%edi
414790:	55                   	push   %ebp
414791:	8b ec                	mov    %esp,%ebp
414793:	51                   	push   %ecx
414794:	56                   	push   %esi
414795:	8b 75 08             	mov    0x8(%ebp),%esi
414798:	83 fe fe             	cmp    $0xfffffffe,%esi
41479b:	75 0d                	jne    0x4147aa
41479d:	e8 65 35 ff ff       	call   0x407d07
4147a2:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
4147a8:	eb 4b                	jmp    0x4147f5
4147aa:	85 f6                	test   %esi,%esi
4147ac:	78 37                	js     0x4147e5
4147ae:	3b 35 c0 43 42 00    	cmp    0x4243c0,%esi
4147b4:	73 2f                	jae    0x4147e5
4147b6:	8b c6                	mov    %esi,%eax
4147b8:	8b d6                	mov    %esi,%edx
4147ba:	83 e0 3f             	and    $0x3f,%eax
4147bd:	c1 fa 06             	sar    $0x6,%edx
4147c0:	6b c8 30             	imul   $0x30,%eax,%ecx
4147c3:	8b 04 95 c0 41 42 00 	mov    0x4241c0(,%edx,4),%eax
4147ca:	f6 44 08 28 01       	testb  $0x1,0x28(%eax,%ecx,1)
4147cf:	74 14                	je     0x4147e5
4147d1:	8d 45 08             	lea    0x8(%ebp),%eax
4147d4:	89 45 fc             	mov    %eax,-0x4(%ebp)
4147d7:	8d 45 fc             	lea    -0x4(%ebp),%eax
4147da:	50                   	push   %eax
4147db:	56                   	push   %esi
4147dc:	e8 85 ff ff ff       	call   0x414766