438586:	83 fe 04             	cmp    $0x4,%esi
438589:	76 0e                	jbe    0x438599
43858b:	83 fe 05             	cmp    $0x5,%esi
43858e:	0f 84 02 01 00 00    	je     0x438696
438594:	e9 46 01 00 00       	jmp    0x4386df
438599:	51                   	push   %ecx
43859a:	53                   	push   %ebx
43859b:	53                   	push   %ebx
43859c:	ff 37                	push   (%edi)
43859e:	e8 6e 95 ff ff       	call   0x431b11
4385a3:	83 c4 10             	add    $0x10,%esp
4385a6:	0b c2                	or     %edx,%eax
4385a8:	0f 84 e5 00 00 00    	je     0x438693
4385ae:	53                   	push   %ebx
4385af:	53                   	push   %ebx
4385b0:	53                   	push   %ebx
4385b1:	ff 37                	push   (%edi)
4385b3:	e8 59 95 ff ff       	call   0x431b11
4385b8:	23 c2                	and    %edx,%eax
4385ba:	83 c4 10             	add    $0x10,%esp
4385bd:	83 f8 ff             	cmp    $0xffffffff,%eax
4385c0:	0f 84 9c fe ff ff    	je     0x438462
4385c6:	6a 03                	push   $0x3
4385c8:	8d 45 ec             	lea    -0x14(%ebp),%eax
4385cb:	50                   	push   %eax
4385cc:	ff 37                	push   (%edi)
4385ce:	e8 d8 8a ff ff       	call   0x4310ab
4385d3:	83 c4 0c             	add    $0xc,%esp
4385d6:	83 f8 ff             	cmp    $0xffffffff,%eax
4385d9:	0f 84 83 fe ff ff    	je     0x438462
4385df:	8b 4d ec             	mov    -0x14(%ebp),%ecx
4385e2:	6a 02                	push   $0x2
4385e4:	5a                   	pop    %edx
4385e5:	3b c2                	cmp    %edx,%eax
4385e7:	74 1a                	je     0x438603
4385e9:	83 f8 03             	cmp    $0x3,%eax
4385ec:	0f 85 88 00 00 00    	jne    0x43867a
4385f2:	81 f9 ef bb bf 00    	cmp    $0xbfbbef,%ecx
4385f8:	75 09                	jne    0x438603
4385fa:	c6 45 fe 01          	movb   $0x1,-0x2(%ebp)
4385fe:	e9 dc 00 00 00       	jmp    0x4386df
438603:	81 e1 ff ff 00 00    	and    $0xffff,%ecx
438609:	81 f9 fe ff 00 00    	cmp    $0xfffe,%ecx
43860f:	75 17                	jne    0x438628
438611:	ff 37                	push   (%edi)
438613:	e8 15 87 ff ff       	call   0x430d2d
438618:	59                   	pop    %ecx
438619:	e8 4a 07 ff ff       	call   0x428d68
43861e:	6a 16                	push   $0x16
438620:	5b                   	pop    %ebx
438621:	89 18                	mov    %ebx,(%eax)
438623:	e9 b7 01 00 00       	jmp    0x4387df
438628:	81 f9 ff fe 00 00    	cmp    $0xfeff,%ecx
43862e:	75 4a                	jne    0x43867a
438630:	53                   	push   %ebx
438631:	53                   	push   %ebx
438632:	52                   	push   %edx
438633:	ff 37                	push   (%edi)
438635:	e8 d7 94 ff ff       	call   0x431b11
43863a:	23 c2                	and    %edx,%eax
43863c:	83 c4 10             	add    $0x10,%esp
43863f:	83 f8 ff             	cmp    $0xffffffff,%eax
438642:	0f 84 1a fe ff ff    	je     0x438462
438648:	c6 45 fe 02          	movb   $0x2,-0x2(%ebp)
43864c:	e9 8e 00 00 00       	jmp    0x4386df
438651:	85 f6                	test   %esi,%esi
438653:	0f 84 86 00 00 00    	je     0x4386df
438659:	6a 02                	push   $0x2
43865b:	59                   	pop    %ecx
43865c:	3b f1                	cmp    %ecx,%esi
43865e:	76 36                	jbe    0x438696
438660:	83 fe 04             	cmp    $0x4,%esi
438663:	0f 87 22 ff ff ff    	ja     0x43858b
438669:	51                   	push   %ecx
43866a:	53                   	push   %ebx
43866b:	53                   	push   %ebx
43866c:	ff 37                	push   (%edi)
43866e:	e8 9e 94 ff ff       	call   0x431b11
438673:	83 c4 10             	add    $0x10,%esp
438676:	0b c2                	or     %edx,%eax
438678:	74 19                	je     0x438693
43867a:	53                   	push   %ebx
43867b:	53                   	push   %ebx
43867c:	53                   	push   %ebx
43867d:	ff 37                	push   (%edi)
43867f:	e8 8d 94 ff ff       	call   0x431b11
438684:	23 c2                	and    %edx,%eax
438686:	83 c4 10             	add    $0x10,%esp
438689:	83 f8 ff             	cmp    $0xffffffff,%eax
43868c:	75 51                	jne    0x4386df
43868e:	e9 cf fd ff ff       	jmp    0x438462
438693:	6a 02                	push   $0x2
438695:	59                   	pop    %ecx
438696:	0f be 45 fe          	movsbl -0x2(%ebp),%eax
43869a:	8b f3                	mov    %ebx,%esi
43869c:	48                   	dec    %eax
43869d:	74 0c                	je     0x4386ab
43869f:	48                   	dec    %eax
4386a0:	75 3d                	jne    0x4386df
4386a2:	c7 45 ec ff fe 00 00 	movl   $0xfeff,-0x14(%ebp)
4386a9:	eb 0d                	jmp    0x4386b8
4386ab:	6a 03                	push   $0x3
4386ad:	59                   	pop    %ecx
4386ae:	c7 45 ec ef bb bf 00 	movl   $0xbfbbef,-0x14(%ebp)
4386b5:	89 4d d8             	mov    %ecx,-0x28(%ebp)
4386b8:	8b c1                	mov    %ecx,%eax
4386ba:	2b c6                	sub    %esi,%eax
4386bc:	50                   	push   %eax
4386bd:	8d 45 ec             	lea    -0x14(%ebp),%eax
4386c0:	03 c6                	add    %esi,%eax
4386c2:	50                   	push   %eax
4386c3:	ff 37                	push   (%edi)
4386c5:	e8 fc 53 ff ff       	call   0x42dac6
4386ca:	83 c4 0c             	add    $0xc,%esp
4386cd:	83 f8 ff             	cmp    $0xffffffff,%eax
4386d0:	0f 84 8c fd ff ff    	je     0x438462
4386d6:	8b 4d d8             	mov    -0x28(%ebp),%ecx
4386d9:	03 f0                	add    %eax,%esi
4386db:	3b ce                	cmp    %esi,%ecx
4386dd:	7f d9                	jg     0x4386b8
4386df:	8b 17                	mov    (%edi),%edx
4386e1:	8b c2                	mov    %edx,%eax
4386e3:	c1 f8 05             	sar    $0x5,%eax
4386e6:	83 e2 1f             	and    $0x1f,%edx
4386e9:	c1 e2 06             	shl    $0x6,%edx
4386ec:	8b 0c 85 e0 49 4c 00 	mov    0x4c49e0(,%eax,4),%ecx
4386f3:	8a 44 11 24          	mov    0x24(%ecx,%edx,1),%al
4386f7:	32 45 fe             	xor    -0x2(%ebp),%al
4386fa:	24 7f                	and    $0x7f,%al
4386fc:	30 44 11 24          	xor    %al,0x24(%ecx,%edx,1)
438700:	8b 37                	mov    (%edi),%esi
438702:	8b c6                	mov    %esi,%eax
438704:	8b 4d 14             	mov    0x14(%ebp),%ecx
438707:	83 e6 1f             	and    $0x1f,%esi
43870a:	c1 f8 05             	sar    $0x5,%eax
43870d:	c1 e6 06             	shl    $0x6,%esi
438710:	c1 e9 10             	shr    $0x10,%ecx
438713:	c0 e1 07             	shl    $0x7,%cl
438716:	8b 14 85 e0 49 4c 00 	mov    0x4c49e0(,%eax,4),%edx
43871d:	8a 44 32 24          	mov    0x24(%edx,%esi,1),%al
438721:	24 7f                	and    $0x7f,%al
438723:	0a c8                	or     %al,%cl
438725:	88 4c 32 24          	mov    %cl,0x24(%edx,%esi,1)
438729:	8b 4d 14             	mov    0x14(%ebp),%ecx
43872c:	38 5d fd             	cmp    %bl,-0x3(%ebp)
43872f:	75 21                	jne    0x438752
438731:	f6 c1 08             	test   $0x8,%cl
438734:	74 1c                	je     0x438752
438736:	8b 0f                	mov    (%edi),%ecx
438738:	8b c1                	mov    %ecx,%eax
43873a:	c1 f8 05             	sar    $0x5,%eax
43873d:	83 e1 1f             	and    $0x1f,%ecx
438740:	c1 e1 06             	shl    $0x6,%ecx
438743:	8b 04 85 e0 49 4c 00 	mov    0x4c49e0(,%eax,4),%eax
43874a:	80 4c 08 04 20       	orb    $0x20,0x4(%eax,%ecx,1)
43874f:	8b 4d 14             	mov    0x14(%ebp),%ecx
438752:	8b 75 f8             	mov    -0x8(%ebp),%esi
438755:	ba 00 00 00 c0       	mov    $0xc0000000,%edx
43875a:	8b c6                	mov    %esi,%eax
43875c:	23 c2                	and    %edx,%eax
43875e:	3b c2                	cmp    %edx,%eax
438760:	75 7d                	jne    0x4387df
438762:	f6 c1 01             	test   $0x1,%cl
438765:	74 78                	je     0x4387df
438767:	ff 75 e4             	push   -0x1c(%ebp)
43876a:	ff 15 5c f3 48 00    	call   *0x48f35c
438770:	ff 75 f0             	push   -0x10(%ebp)
438773:	8d 45 c8             	lea    -0x38(%ebp),%eax
438776:	81 e6 ff ff ff 7f    	and    $0x7fffffff,%esi
43877c:	ff 75 e8             	push   -0x18(%ebp)
43877f:	6a 03                	push   $0x3
438781:	50                   	push   %eax
438782:	ff 75 f4             	push   -0xc(%ebp)
438785:	56                   	push   %esi
438786:	ff 75 10             	push   0x10(%ebp)
438789:	e8 bf f7 ff ff       	call   0x437f4d
43878e:	83 c4 1c             	add    $0x1c,%esp
438791:	83 f8 ff             	cmp    $0xffffffff,%eax
438794:	75 32                	jne    0x4387c8
438796:	ff 15 40 f3 48 00    	call   *0x48f340
43879c:	50                   	push   %eax
43879d:	e8 a5 05 ff ff       	call   0x428d47
4387a2:	8b 0f                	mov    (%edi),%ecx
4387a4:	8b c1                	mov    %ecx,%eax
4387a6:	c1 f8 05             	sar    $0x5,%eax
4387a9:	83 e1 1f             	and    $0x1f,%ecx
4387ac:	c1 e1 06             	shl    $0x6,%ecx
4387af:	8b 04 85 e0 49 4c 00 	mov    0x4c49e0(,%eax,4),%eax
4387b6:	80 64 08 04 fe       	andb   $0xfe,0x4(%eax,%ecx,1)
4387bb:	ff 37                	push   (%edi)
4387bd:	e8 bb 4e ff ff       	call   0x42d67d
4387c2:	59                   	pop    %ecx
4387c3:	e9 99 fb ff ff       	jmp    0x438361
4387c8:	8b 17                	mov    (%edi),%edx
4387ca:	8b ca                	mov    %edx,%ecx
4387cc:	c1 f9 05             	sar    $0x5,%ecx
4387cf:	83 e2 1f             	and    $0x1f,%edx
4387d2:	c1 e2 06             	shl    $0x6,%edx
4387d5:	8b 0c 8d e0 49 4c 00 	mov    0x4c49e0(,%ecx,4),%ecx
4387dc:	89 04 0a             	mov    %eax,(%edx,%ecx,1)
4387df:	8b c3                	mov    %ebx,%eax
4387e1:	e9 e1 fa ff ff       	jmp    0x4382c7
4387e6:	53                   	push   %ebx
4387e7:	53                   	push   %ebx
4387e8:	53                   	push   %ebx
4387e9:	53                   	push   %ebx
4387ea:	53                   	push   %ebx
4387eb:	e8 16 08 ff ff       	call   0x429006
4387f0:	cc                   	int3
4387f1:	55                   	push   %ebp
4387f2:	8b ec                	mov    %esp,%ebp
4387f4:	6a 01                	push   $0x1
4387f6:	ff 75 08             	push   0x8(%ebp)
4387f9:	ff 75 18             	push   0x18(%ebp)
4387fc:	ff 75 14             	push   0x14(%ebp)
4387ff:	ff 75 10             	push   0x10(%ebp)
438802:	ff 75 0c             	push   0xc(%ebp)
438805:	e8 cb f7 ff ff       	call   0x437fd5
43880a:	83 c4 18             	add    $0x18,%esp
43880d:	5d                   	pop    %ebp
43880e:	c3                   	ret
43880f:	cc                   	int3
438810:	55                   	push   %ebp
438811:	8b ec                	mov    %esp,%ebp
438813:	53                   	push   %ebx
438814:	56                   	push   %esi
438815:	57                   	push   %edi
438816:	55                   	push   %ebp
438817:	6a 00                	push   $0x0
438819:	6a 00                	push   $0x0
43881b:	68 28 88 43 00       	push   $0x438828
438820:	ff 75 08             	push   0x8(%ebp)
438823:	e8 98 2d 00 00       	call   0x43b5c0
438828:	5d                   	pop    %ebp
438829:	5f                   	pop    %edi
43882a:	5e                   	pop    %esi
43882b:	5b                   	pop    %ebx
43882c:	8b e5                	mov    %ebp,%esp
43882e:	5d                   	pop    %ebp
43882f:	c3                   	ret
438830:	8b 4c 24 04          	mov    0x4(%esp),%ecx
438834:	f7 41 04 06 00 00 00 	testl  $0x6,0x4(%ecx)
43883b:	b8 01 00 00 00       	mov    $0x1,%eax
438840:	74 32                	je     0x438874
438842:	8b 44 24 14          	mov    0x14(%esp),%eax
438846:	8b 48 fc             	mov    -0x4(%eax),%ecx
438849:	33 c8                	xor    %eax,%ecx
43884b:	e8 e6 3f ff ff       	call   0x42c836
438850:	55                   	push   %ebp
438851:	8b 68 10             	mov    0x10(%eax),%ebp
438854:	8b 50 28             	mov    0x28(%eax),%edx
438857:	52                   	push   %edx
438858:	8b 50 24             	mov    0x24(%eax),%edx
43885b:	52                   	push   %edx
43885c:	e8 14 00 00 00       	call   0x438875
438861:	83 c4 08             	add    $0x8,%esp
438864:	5d                   	pop    %ebp
438865:	8b 44 24 08          	mov    0x8(%esp),%eax
438869:	8b 54 24 10          	mov    0x10(%esp),%edx
43886d:	89 02                	mov    %eax,(%edx)
43886f:	b8 03 00 00 00       	mov    $0x3,%eax
438874:	c3                   	ret
438875:	53                   	push   %ebx
438876:	56                   	push   %esi
438877:	57                   	push   %edi
438878:	8b 44 24 10          	mov    0x10(%esp),%eax
43887c:	55                   	push   %ebp
43887d:	50                   	push   %eax
43887e:	6a fe                	push   $0xfffffffe
438880:	68 30 88 43 00       	push   $0x438830
438885:	64 ff 35 00 00 00 00 	push   %fs:0x0
43888c:	a1 50 fd 4b 00       	mov    0x4bfd50,%eax
438891:	33 c4                	xor    %esp,%eax
438893:	50                   	push   %eax
438894:	8d 44 24 04          	lea    0x4(%esp),%eax
438898:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
43889e:	8b 44 24 28          	mov    0x28(%esp),%eax
4388a2:	8b 58 08             	mov    0x8(%eax),%ebx
4388a5:	8b 70 0c             	mov    0xc(%eax),%esi
4388a8:	83 fe ff             	cmp    $0xffffffff,%esi
4388ab:	74 3a                	je     0x4388e7
4388ad:	83 7c 24 2c ff       	cmpl   $0xffffffff,0x2c(%esp)
4388b2:	74 06                	je     0x4388ba
4388b4:	3b 74 24 2c          	cmp    0x2c(%esp),%esi
4388b8:	76 2d                	jbe    0x4388e7
4388ba:	8d 34 76             	lea    (%esi,%esi,2),%esi
4388bd:	8b 0c b3             	mov    (%ebx,%esi,4),%ecx
4388c0:	89 4c 24 0c          	mov    %ecx,0xc(%esp)
4388c4:	89 48 0c             	mov    %ecx,0xc(%eax)
4388c7:	83 7c b3 04 00       	cmpl   $0x0,0x4(%ebx,%esi,4)
4388cc:	75 17                	jne    0x4388e5
4388ce:	68 01 01 00 00       	push   $0x101
4388d3:	8b 44 b3 08          	mov    0x8(%ebx,%esi,4),%eax
4388d7:	e8 49 00 00 00       	call   0x438925
4388dc:	8b 44 b3 08          	mov    0x8(%ebx,%esi,4),%eax
4388e0:	e8 5f 00 00 00       	call   0x438944
4388e5:	eb b7                	jmp    0x43889e
4388e7:	8b 4c 24 04          	mov    0x4(%esp),%ecx
4388eb:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4388f2:	83 c4 18             	add    $0x18,%esp
4388f5:	5f                   	pop    %edi
4388f6:	5e                   	pop    %esi
4388f7:	5b                   	pop    %ebx
4388f8:	c3                   	ret
4388f9:	33 c0                	xor    %eax,%eax
4388fb:	64 8b 0d 00 00 00 00 	mov    %fs:0x0,%ecx
438902:	81 79 04 30 88 43 00 	cmpl   $0x438830,0x4(%ecx)
438909:	75 10                	jne    0x43891b
43890b:	8b 51 0c             	mov    0xc(%ecx),%edx
43890e:	8b 52 0c             	mov    0xc(%edx),%edx
438911:	39 51 08             	cmp    %edx,0x8(%ecx)
438914:	75 05                	jne    0x43891b
438916:	b8 01 00 00 00       	mov    $0x1,%eax
43891b:	c3                   	ret
43891c:	53                   	push   %ebx
43891d:	51                   	push   %ecx
43891e:	bb 00 04 4c 00       	mov    $0x4c0400,%ebx
438923:	eb 0b                	jmp    0x438930
438925:	53                   	push   %ebx
438926:	51                   	push   %ecx
438927:	bb 00 04 4c 00       	mov    $0x4c0400,%ebx
43892c:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
438930:	89 4b 08             	mov    %ecx,0x8(%ebx)
438933:	89 43 04             	mov    %eax,0x4(%ebx)
438936:	89 6b 0c             	mov    %ebp,0xc(%ebx)
438939:	55                   	push   %ebp
43893a:	51                   	push   %ecx
43893b:	50                   	push   %eax
43893c:	58                   	pop    %eax
43893d:	59                   	pop    %ecx
43893e:	5d                   	pop    %ebp
43893f:	59                   	pop    %ecx
438940:	5b                   	pop    %ebx
438941:	c2 04 00             	ret    $0x4
438944:	ff d0                	call   *%eax
438946:	c3                   	ret
438947:	55                   	push   %ebp
438948:	8b ec                	mov    %esp,%ebp
43894a:	6a 0a                	push   $0xa
43894c:	6a 00                	push   $0x0
43894e:	ff 75 08             	push   0x8(%ebp)
438951:	e8 3c 10 00 00       	call   0x439992
438956:	83 c4 0c             	add    $0xc,%esp
438959:	5d                   	pop    %ebp
43895a:	c3                   	ret
43895b:	55                   	push   %ebp
43895c:	8b ec                	mov    %esp,%ebp
43895e:	83 3d 58 62 4c 00 00 	cmpl   $0x0,0x4c6258
438965:	56                   	push   %esi
438966:	8b 35 b0 41 4c 00    	mov    0x4c41b0,%esi