41861c:	7e 07                	jle    0x418625
41861e:	8b c6                	mov    %esi,%eax
418620:	e8 4f b0 fe ff       	call   0x403674
418625:	5e                   	pop    %esi
418626:	5b                   	pop    %ebx
418627:	c3                   	ret
418628:	53                   	push   %ebx
418629:	56                   	push   %esi
41862a:	57                   	push   %edi
41862b:	8b fa                	mov    %edx,%edi
41862d:	8b d8                	mov    %eax,%ebx
41862f:	8b 73 08             	mov    0x8(%ebx),%esi
418632:	3b 73 0c             	cmp    0xc(%ebx),%esi
418635:	75 06                	jne    0x41863d
418637:	8b c3                	mov    %ebx,%eax
418639:	8b 10                	mov    (%eax),%edx
41863b:	ff 12                	call   *(%edx)
41863d:	8b 43 04             	mov    0x4(%ebx),%eax
418640:	89 3c b0             	mov    %edi,(%eax,%esi,4)
418643:	ff 43 08             	incl   0x8(%ebx)
418646:	85 ff                	test   %edi,%edi
418648:	74 0b                	je     0x418655
41864a:	33 c9                	xor    %ecx,%ecx
41864c:	8b d7                	mov    %edi,%edx
41864e:	8b c3                	mov    %ebx,%eax
418650:	8b 18                	mov    (%eax),%ebx
418652:	ff 53 04             	call   *0x4(%ebx)
418655:	8b c6                	mov    %esi,%eax
418657:	5f                   	pop    %edi
418658:	5e                   	pop    %esi
418659:	5b                   	pop    %ebx
41865a:	c3                   	ret
41865b:	90                   	nop
41865c:	53                   	push   %ebx
41865d:	8b d8                	mov    %eax,%ebx
41865f:	33 d2                	xor    %edx,%edx
418661:	8b c3                	mov    %ebx,%eax
418663:	e8 14 03 00 00       	call   0x41897c
418668:	33 d2                	xor    %edx,%edx
41866a:	8b c3                	mov    %ebx,%eax
41866c:	e8 cf 02 00 00       	call   0x418940
418671:	5b                   	pop    %ebx
418672:	c3                   	ret
418673:	90                   	nop
418674:	53                   	push   %ebx
418675:	56                   	push   %esi
418676:	57                   	push   %edi
418677:	8b f2                	mov    %edx,%esi
418679:	8b d8                	mov    %eax,%ebx
41867b:	85 f6                	test   %esi,%esi
41867d:	7c 05                	jl     0x418684
41867f:	3b 73 08             	cmp    0x8(%ebx),%esi
418682:	7c 0f                	jl     0x418693
418684:	8b 15 ec 47 47 00    	mov    0x4747ec,%edx
41868a:	8b ce                	mov    %esi,%ecx
41868c:	8b 03                	mov    (%ebx),%eax
41868e:	e8 7d 00 00 00       	call   0x418710
418693:	8b d6                	mov    %esi,%edx
418695:	8b c3                	mov    %ebx,%eax
418697:	e8 e8 00 00 00       	call   0x418784
41869c:	8b f8                	mov    %eax,%edi
41869e:	ff 4b 08             	decl   0x8(%ebx)
4186a1:	8b 43 08             	mov    0x8(%ebx),%eax
4186a4:	3b f0                	cmp    %eax,%esi
4186a6:	7d 19                	jge    0x4186c1
4186a8:	2b c6                	sub    %esi,%eax
4186aa:	8b c8                	mov    %eax,%ecx
4186ac:	c1 e1 02             	shl    $0x2,%ecx
4186af:	8b 43 04             	mov    0x4(%ebx),%eax
4186b2:	8d 14 b0             	lea    (%eax,%esi,4),%edx
4186b5:	8b 43 04             	mov    0x4(%ebx),%eax
4186b8:	8d 44 b0 04          	lea    0x4(%eax,%esi,4),%eax
4186bc:	e8 2f a2 fe ff       	call   0x4028f0
4186c1:	85 ff                	test   %edi,%edi
4186c3:	74 0b                	je     0x4186d0
4186c5:	b1 02                	mov    $0x2,%cl
4186c7:	8b d7                	mov    %edi,%edx
4186c9:	8b c3                	mov    %ebx,%eax
4186cb:	8b 18                	mov    (%eax),%ebx
4186cd:	ff 53 04             	call   *0x4(%ebx)
4186d0:	5f                   	pop    %edi
4186d1:	5e                   	pop    %esi
4186d2:	5b                   	pop    %ebx
4186d3:	c3                   	ret
4186d4:	8b 45 04             	mov    0x4(%ebp),%eax
4186d7:	c3                   	ret
4186d8:	53                   	push   %ebx
4186d9:	56                   	push   %esi
4186da:	83 c4 f8             	add    $0xfffffff8,%esp
4186dd:	8b f1                	mov    %ecx,%esi
4186df:	8b da                	mov    %edx,%ebx
4186e1:	e8 ee ff ff ff       	call   0x4186d4
4186e6:	50                   	push   %eax
4186e7:	89 74 24 04          	mov    %esi,0x4(%esp)
4186eb:	c6 44 24 08 00       	movb   $0x0,0x8(%esp)
4186f0:	8d 44 24 04          	lea    0x4(%esp),%eax
4186f4:	50                   	push   %eax
4186f5:	6a 00                	push   $0x0
4186f7:	8b cb                	mov    %ebx,%ecx
4186f9:	b2 01                	mov    $0x1,%dl
4186fb:	a1 b0 5d 41 00       	mov    0x415db0,%eax
418700:	e8 2b 34 ff ff       	call   0x40bb30
418705:	e9 82 b3 fe ff       	jmp    0x403a8c
41870a:	59                   	pop    %ecx
41870b:	5a                   	pop    %edx
41870c:	5e                   	pop    %esi
41870d:	5b                   	pop    %ebx
41870e:	c3                   	ret
41870f:	90                   	nop
418710:	55                   	push   %ebp
418711:	8b ec                	mov    %esp,%ebp
418713:	6a 00                	push   $0x0
418715:	53                   	push   %ebx
418716:	56                   	push   %esi
418717:	8b f1                	mov    %ecx,%esi
418719:	8b da                	mov    %edx,%ebx
41871b:	33 c0                	xor    %eax,%eax
41871d:	55                   	push   %ebp
41871e:	68 58 87 41 00       	push   $0x418758
418723:	64 ff 30             	push   %fs:(%eax)
418726:	64 89 20             	mov    %esp,%fs:(%eax)
418729:	8d 55 fc             	lea    -0x4(%ebp),%edx
41872c:	8b c3                	mov    %ebx,%eax
41872e:	e8 b1 d6 fe ff       	call   0x405de4
418733:	8b 55 fc             	mov    -0x4(%ebp),%edx
418736:	8b ce                	mov    %esi,%ecx
418738:	a1 d8 5f 41 00       	mov    0x415fd8,%eax
41873d:	e8 96 ff ff ff       	call   0x4186d8
418742:	33 c0                	xor    %eax,%eax
418744:	5a                   	pop    %edx
418745:	59                   	pop    %ecx
418746:	59                   	pop    %ecx
418747:	64 89 10             	mov    %edx,%fs:(%eax)
41874a:	68 5f 87 41 00       	push   $0x41875f
41874f:	8d 45 fc             	lea    -0x4(%ebp),%eax
418752:	e8 f9 b8 fe ff       	call   0x404050
418757:	c3                   	ret
418758:	e9 f7 b2 fe ff       	jmp    0x403a54
41875d:	eb f0                	jmp    0x41874f
41875f:	5e                   	pop    %esi
418760:	5b                   	pop    %ebx
418761:	59                   	pop    %ecx
418762:	5d                   	pop    %ebp
418763:	c3                   	ret
418764:	53                   	push   %ebx
418765:	8b d8                	mov    %eax,%ebx
418767:	8b 43 08             	mov    0x8(%ebx),%eax
41876a:	3b 43 0c             	cmp    0xc(%ebx),%eax
41876d:	75 06                	jne    0x418775
41876f:	8b c3                	mov    %ebx,%eax
418771:	8b 10                	mov    (%eax),%edx
418773:	ff 12                	call   *(%edx)
418775:	8b c3                	mov    %ebx,%eax
418777:	5b                   	pop    %ebx
418778:	c3                   	ret
418779:	8d 40 00             	lea    0x0(%eax),%eax
41877c:	33 d2                	xor    %edx,%edx
41877e:	e8 01 00 00 00       	call   0x418784
418783:	c3                   	ret
418784:	53                   	push   %ebx
418785:	56                   	push   %esi
418786:	8b f2                	mov    %edx,%esi
418788:	8b d8                	mov    %eax,%ebx
41878a:	85 f6                	test   %esi,%esi
41878c:	7c 05                	jl     0x418793
41878e:	3b 73 08             	cmp    0x8(%ebx),%esi
418791:	7c 0f                	jl     0x4187a2
418793:	8b 15 ec 47 47 00    	mov    0x4747ec,%edx
418799:	8b ce                	mov    %esi,%ecx
41879b:	8b 03                	mov    (%ebx),%eax
41879d:	e8 6e ff ff ff       	call   0x418710
4187a2:	8b 43 04             	mov    0x4(%ebx),%eax
4187a5:	8b 04 b0             	mov    (%eax,%esi,4),%eax
4187a8:	5e                   	pop    %esi
4187a9:	5b                   	pop    %ebx
4187aa:	c3                   	ret
4187ab:	90                   	nop
4187ac:	8b 50 0c             	mov    0xc(%eax),%edx
4187af:	83 fa 40             	cmp    $0x40,%edx
4187b2:	7e 0e                	jle    0x4187c2
4187b4:	8b ca                	mov    %edx,%ecx
4187b6:	85 c9                	test   %ecx,%ecx
4187b8:	79 03                	jns    0x4187bd
4187ba:	83 c1 03             	add    $0x3,%ecx
4187bd:	c1 f9 02             	sar    $0x2,%ecx
4187c0:	eb 11                	jmp    0x4187d3
4187c2:	83 fa 08             	cmp    $0x8,%edx
4187c5:	7e 07                	jle    0x4187ce
4187c7:	b9 10 00 00 00       	mov    $0x10,%ecx
4187cc:	eb 05                	jmp    0x4187d3
4187ce:	b9 04 00 00 00       	mov    $0x4,%ecx
4187d3:	03 ca                	add    %edx,%ecx
4187d5:	8b d1                	mov    %ecx,%edx
4187d7:	e8 64 01 00 00       	call   0x418940
4187dc:	c3                   	ret
4187dd:	8d 40 00             	lea    0x0(%eax),%eax
4187e0:	53                   	push   %ebx
4187e1:	33 c9                	xor    %ecx,%ecx
4187e3:	eb 01                	jmp    0x4187e6
4187e5:	41                   	inc    %ecx
4187e6:	3b 48 08             	cmp    0x8(%eax),%ecx
4187e9:	7d 08                	jge    0x4187f3
4187eb:	8b 58 04             	mov    0x4(%eax),%ebx
4187ee:	3b 14 8b             	cmp    (%ebx,%ecx,4),%edx
4187f1:	75 f2                	jne    0x4187e5
4187f3:	3b 48 08             	cmp    0x8(%eax),%ecx
4187f6:	75 03                	jne    0x4187fb
4187f8:	83 c9 ff             	or     $0xffffffff,%ecx
4187fb:	8b c1                	mov    %ecx,%eax
4187fd:	5b                   	pop    %ebx
4187fe:	c3                   	ret
4187ff:	90                   	nop
418800:	53                   	push   %ebx
418801:	56                   	push   %esi
418802:	57                   	push   %edi
418803:	8b f9                	mov    %ecx,%edi
418805:	8b f2                	mov    %edx,%esi
418807:	8b d8                	mov    %eax,%ebx
418809:	85 f6                	test   %esi,%esi
41880b:	7c 05                	jl     0x418812
41880d:	3b 73 08             	cmp    0x8(%ebx),%esi
418810:	7e 0f                	jle    0x418821
418812:	8b 15 ec 47 47 00    	mov    0x4747ec,%edx
418818:	8b ce                	mov    %esi,%ecx
41881a:	8b 03                	mov    (%ebx),%eax
41881c:	e8 ef fe ff ff       	call   0x418710
418821:	8b 43 08             	mov    0x8(%ebx),%eax
418824:	3b 43 0c             	cmp    0xc(%ebx),%eax
418827:	75 06                	jne    0x41882f
418829:	8b c3                	mov    %ebx,%eax
41882b:	8b 10                	mov    (%eax),%edx
41882d:	ff 12                	call   *(%edx)
41882f:	8b 43 08             	mov    0x8(%ebx),%eax
418832:	3b f0                	cmp    %eax,%esi
418834:	7d 19                	jge    0x41884f
418836:	2b c6                	sub    %esi,%eax
418838:	8b c8                	mov    %eax,%ecx
41883a:	c1 e1 02             	shl    $0x2,%ecx
41883d:	8b 43 04             	mov    0x4(%ebx),%eax
418840:	8d 54 b0 04          	lea    0x4(%eax,%esi,4),%edx
418844:	8b 43 04             	mov    0x4(%ebx),%eax
418847:	8d 04 b0             	lea    (%eax,%esi,4),%eax
41884a:	e8 a1 a0 fe ff       	call   0x4028f0
41884f:	8b 43 04             	mov    0x4(%ebx),%eax
418852:	89 3c b0             	mov    %edi,(%eax,%esi,4)
418855:	ff 43 08             	incl   0x8(%ebx)
418858:	85 ff                	test   %edi,%edi
41885a:	74 0b                	je     0x418867
41885c:	33 c9                	xor    %ecx,%ecx
41885e:	8b d7                	mov    %edi,%edx
418860:	8b c3                	mov    %ebx,%eax
418862:	8b 18                	mov    (%eax),%ebx
418864:	ff 53 04             	call   *0x4(%ebx)
418867:	5f                   	pop    %edi
418868:	5e                   	pop    %esi
418869:	5b                   	pop    %ebx
41886a:	c3                   	ret
41886b:	90                   	nop
41886c:	8b 50 08             	mov    0x8(%eax),%edx
41886f:	4a                   	dec    %edx
418870:	e8 0f ff ff ff       	call   0x418784
418875:	c3                   	ret
418876:	8b c0                	mov    %eax,%eax
418878:	53                   	push   %ebx
418879:	56                   	push   %esi
41887a:	57                   	push   %edi
41887b:	55                   	push   %ebp
41887c:	8b f1                	mov    %ecx,%esi
41887e:	8b fa                	mov    %edx,%edi
418880:	8b d8                	mov    %eax,%ebx
418882:	3b f7                	cmp    %edi,%esi
418884:	74 45                	je     0x4188cb
418886:	85 f6                	test   %esi,%esi
418888:	7c 05                	jl     0x41888f
41888a:	3b 73 08             	cmp    0x8(%ebx),%esi
41888d:	7c 0f                	jl     0x41889e
41888f:	8b 15 ec 47 47 00    	mov    0x4747ec,%edx
418895:	8b ce                	mov    %esi,%ecx
418897:	8b 03                	mov    (%ebx),%eax
418899:	e8 72 fe ff ff       	call   0x418710
41889e:	8b d7                	mov    %edi,%edx
4188a0:	8b c3                	mov    %ebx,%eax
4188a2:	e8 dd fe ff ff       	call   0x418784
4188a7:	8b e8                	mov    %eax,%ebp
4188a9:	8b 43 04             	mov    0x4(%ebx),%eax
4188ac:	33 d2                	xor    %edx,%edx
4188ae:	89 14 b8             	mov    %edx,(%eax,%edi,4)
4188b1:	8b d7                	mov    %edi,%edx
4188b3:	8b c3                	mov    %ebx,%eax
4188b5:	e8 ba fd ff ff       	call   0x418674
4188ba:	33 c9                	xor    %ecx,%ecx
4188bc:	8b d6                	mov    %esi,%edx
4188be:	8b c3                	mov    %ebx,%eax
4188c0:	e8 3b ff ff ff       	call   0x418800
4188c5:	8b 43 04             	mov    0x4(%ebx),%eax
4188c8:	89 2c b0             	mov    %ebp,(%eax,%esi,4)
4188cb:	5d                   	pop    %ebp
4188cc:	5f                   	pop    %edi
4188cd:	5e                   	pop    %esi
4188ce:	5b                   	pop    %ebx
4188cf:	c3                   	ret
4188d0:	53                   	push   %ebx
4188d1:	56                   	push   %esi
4188d2:	57                   	push   %edi
4188d3:	8b f9                	mov    %ecx,%edi
4188d5:	8b f2                	mov    %edx,%esi
4188d7:	8b d8                	mov    %eax,%ebx
4188d9:	85 f6                	test   %esi,%esi
4188db:	7c 05                	jl     0x4188e2
4188dd:	3b 73 08             	cmp    0x8(%ebx),%esi
4188e0:	7c 0f                	jl     0x4188f1
4188e2:	8b 15 ec 47 47 00    	mov    0x4747ec,%edx
4188e8:	8b ce                	mov    %esi,%ecx
4188ea:	8b 03                	mov    (%ebx),%eax
4188ec:	e8 1f fe ff ff       	call   0x418710
4188f1:	8b 53 04             	mov    0x4(%ebx),%edx
4188f4:	8b 04 b2             	mov    (%edx,%esi,4),%eax
4188f7:	3b f8                	cmp    %eax,%edi
4188f9:	74 21                	je     0x41891c
4188fb:	89 3c b2             	mov    %edi,(%edx,%esi,4)
4188fe:	85 c0                	test   %eax,%eax
418900:	74 0b                	je     0x41890d
418902:	b1 02                	mov    $0x2,%cl
418904:	8b d0                	mov    %eax,%edx
418906:	8b c3                	mov    %ebx,%eax
418908:	8b 30                	mov    (%eax),%esi
41890a:	ff 56 04             	call   *0x4(%esi)
41890d:	85 ff                	test   %edi,%edi
41890f:	74 0b                	je     0x41891c
418911:	33 c9                	xor    %ecx,%ecx
418913:	8b d7                	mov    %edi,%edx
418915:	8b c3                	mov    %ebx,%eax
418917:	8b 18                	mov    (%eax),%ebx
418919:	ff 53 04             	call   *0x4(%ebx)
41891c:	5f                   	pop    %edi
41891d:	5e                   	pop    %esi
41891e:	5b                   	pop    %ebx
41891f:	c3                   	ret
418920:	53                   	push   %ebx
418921:	56                   	push   %esi
418922:	8b d8                	mov    %eax,%ebx
418924:	8b c3                	mov    %ebx,%eax
418926:	e8 b5 fe ff ff       	call   0x4187e0
41892b:	8b f0                	mov    %eax,%esi
41892d:	85 f6                	test   %esi,%esi
41892f:	7c 09                	jl     0x41893a
418931:	8b d6                	mov    %esi,%edx
418933:	8b c3                	mov    %ebx,%eax
418935:	e8 3a fd ff ff       	call   0x418674
41893a:	8b c6                	mov    %esi,%eax