438590:	8b 45 08             	mov    0x8(%ebp),%eax
438593:	8b 40 d8             	mov    -0x28(%eax),%eax
438596:	e8 8d 50 fe ff       	call   0x41d628
43859b:	8b 45 08             	mov    0x8(%ebp),%eax
43859e:	83 78 d0 00          	cmpl   $0x0,-0x30(%eax)
4385a2:	74 09                	je     0x4385ad
4385a4:	8b 45 08             	mov    0x8(%ebp),%eax
4385a7:	c6 40 cf 00          	movb   $0x0,-0x31(%eax)
4385ab:	eb 2d                	jmp    0x4385da
4385ad:	8b 45 08             	mov    0x8(%ebp),%eax
4385b0:	8b 40 d0             	mov    -0x30(%eax),%eax
4385b3:	8b 15 c8 6e 43 00    	mov    0x436ec8,%edx
4385b9:	e8 d6 b3 fc ff       	call   0x403994
4385be:	84 c0                	test   %al,%al
4385c0:	74 11                	je     0x4385d3
4385c2:	8b 45 08             	mov    0x8(%ebp),%eax
4385c5:	8b 40 d0             	mov    -0x30(%eax),%eax
4385c8:	8a 40 60             	mov    0x60(%eax),%al
4385cb:	8b 55 08             	mov    0x8(%ebp),%edx
4385ce:	88 42 cf             	mov    %al,-0x31(%edx)
4385d1:	eb 07                	jmp    0x4385da
4385d3:	8b 45 08             	mov    0x8(%ebp),%eax
4385d6:	c6 40 cf 00          	movb   $0x0,-0x31(%eax)
4385da:	8b 45 08             	mov    0x8(%ebp),%eax
4385dd:	8b 40 e0             	mov    -0x20(%eax),%eax
4385e0:	40                   	inc    %eax
4385e1:	8b 55 08             	mov    0x8(%ebp),%edx
4385e4:	89 42 f0             	mov    %eax,-0x10(%edx)
4385e7:	8b 45 08             	mov    0x8(%ebp),%eax
4385ea:	8b 40 e4             	mov    -0x1c(%eax),%eax
4385ed:	40                   	inc    %eax
4385ee:	8b 55 08             	mov    0x8(%ebp),%edx
4385f1:	89 42 f4             	mov    %eax,-0xc(%edx)
4385f4:	8b 45 08             	mov    0x8(%ebp),%eax
4385f7:	8b 40 c8             	mov    -0x38(%eax),%eax
4385fa:	8b 40 30             	mov    0x30(%eax),%eax
4385fd:	ba 00 8e 43 00       	mov    $0x438e00,%edx
438602:	e8 75 c3 fc ff       	call   0x40497c
438607:	75 2f                	jne    0x438638
438609:	8b 45 08             	mov    0x8(%ebp),%eax
43860c:	8d 50 e0             	lea    -0x20(%eax),%edx
43860f:	8b 45 08             	mov    0x8(%ebp),%eax
438612:	8b 40 d8             	mov    -0x28(%eax),%eax
438615:	e8 0e 50 fe ff       	call   0x41d628
43861a:	8b 45 08             	mov    0x8(%ebp),%eax
43861d:	33 d2                	xor    %edx,%edx
43861f:	89 50 f0             	mov    %edx,-0x10(%eax)
438622:	8b 45 08             	mov    0x8(%ebp),%eax
438625:	c7 40 f8 fc ff ff ff 	movl   $0xfffffffc,-0x8(%eax)
43862c:	8b 45 08             	mov    0x8(%ebp),%eax
43862f:	c6 40 c7 00          	movb   $0x0,-0x39(%eax)
438633:	e9 9a 04 00 00       	jmp    0x438ad2
438638:	8b 45 08             	mov    0x8(%ebp),%eax
43863b:	83 78 c0 00          	cmpl   $0x0,-0x40(%eax)
43863f:	74 47                	je     0x438688
438641:	8b 45 08             	mov    0x8(%ebp),%eax
438644:	8b 40 c8             	mov    -0x38(%eax),%eax
438647:	8b 58 40             	mov    0x40(%eax),%ebx
43864a:	83 fb ff             	cmp    $0xffffffff,%ebx
43864d:	7e 12                	jle    0x438661
43864f:	8b 45 08             	mov    0x8(%ebp),%eax
438652:	8b 45 08             	mov    0x8(%ebp),%eax
438655:	8b 40 c0             	mov    -0x40(%eax),%eax
438658:	e8 1f cc ff ff       	call   0x43527c
43865d:	3b d8                	cmp    %eax,%ebx
43865f:	7c 2b                	jl     0x43868c
438661:	8b 45 08             	mov    0x8(%ebp),%eax
438664:	8b 40 c8             	mov    -0x38(%eax),%eax
438667:	80 78 38 00          	cmpb   $0x0,0x38(%eax)
43866b:	74 1b                	je     0x438688
43866d:	8b 45 08             	mov    0x8(%ebp),%eax
438670:	8b 40 c8             	mov    -0x38(%eax),%eax
438673:	8b 70 4c             	mov    0x4c(%eax),%esi
438676:	85 f6                	test   %esi,%esi
438678:	74 12                	je     0x43868c
43867a:	8b 45 08             	mov    0x8(%ebp),%eax
43867d:	8b c6                	mov    %esi,%eax
43867f:	8b 10                	mov    (%eax),%edx
438681:	ff 52 1c             	call   *0x1c(%edx)
438684:	84 c0                	test   %al,%al
438686:	75 04                	jne    0x43868c
438688:	33 c0                	xor    %eax,%eax
43868a:	eb 02                	jmp    0x43868e
43868c:	b0 01                	mov    $0x1,%al
43868e:	8b 55 08             	mov    0x8(%ebp),%edx
438691:	88 42 bf             	mov    %al,-0x41(%edx)
438694:	8b 45 08             	mov    0x8(%ebp),%eax
438697:	80 78 bf 00          	cmpb   $0x0,-0x41(%eax)
43869b:	75 23                	jne    0x4386c0
43869d:	8b 45 08             	mov    0x8(%ebp),%eax
4386a0:	8b 40 c8             	mov    -0x38(%eax),%eax
4386a3:	8b 58 4c             	mov    0x4c(%eax),%ebx
4386a6:	85 db                	test   %ebx,%ebx
4386a8:	0f 84 c7 03 00 00    	je     0x438a75
4386ae:	8b 45 08             	mov    0x8(%ebp),%eax
4386b1:	8b c3                	mov    %ebx,%eax
4386b3:	8b 10                	mov    (%eax),%edx
4386b5:	ff 52 1c             	call   *0x1c(%edx)
4386b8:	84 c0                	test   %al,%al
4386ba:	0f 85 b5 03 00 00    	jne    0x438a75
4386c0:	8b 45 08             	mov    0x8(%ebp),%eax
4386c3:	c6 40 c7 01          	movb   $0x1,-0x39(%eax)
4386c7:	8b 45 08             	mov    0x8(%ebp),%eax
4386ca:	80 78 bf 00          	cmpb   $0x0,-0x41(%eax)
4386ce:	74 2c                	je     0x4386fc
4386d0:	8b 45 08             	mov    0x8(%ebp),%eax
4386d3:	8b 40 f0             	mov    -0x10(%eax),%eax
4386d6:	8b 55 08             	mov    0x8(%ebp),%edx
4386d9:	8b 52 c0             	mov    -0x40(%edx),%edx
4386dc:	03 42 34             	add    0x34(%edx),%eax
4386df:	8b 55 08             	mov    0x8(%ebp),%edx
4386e2:	89 42 f8             	mov    %eax,-0x8(%edx)
4386e5:	8b 45 08             	mov    0x8(%ebp),%eax
4386e8:	8b 40 f4             	mov    -0xc(%eax),%eax
4386eb:	8b 55 08             	mov    0x8(%ebp),%edx
4386ee:	8b 52 c0             	mov    -0x40(%edx),%edx
4386f1:	03 42 30             	add    0x30(%edx),%eax
4386f4:	8b 55 08             	mov    0x8(%ebp),%edx
4386f7:	89 42 fc             	mov    %eax,-0x4(%edx)
4386fa:	eb 1e                	jmp    0x43871a
4386fc:	8b 45 08             	mov    0x8(%ebp),%eax
4386ff:	8b 40 f0             	mov    -0x10(%eax),%eax
438702:	83 c0 10             	add    $0x10,%eax
438705:	8b 55 08             	mov    0x8(%ebp),%edx
438708:	89 42 f8             	mov    %eax,-0x8(%edx)
43870b:	8b 45 08             	mov    0x8(%ebp),%eax
43870e:	8b 40 f4             	mov    -0xc(%eax),%eax
438711:	83 c0 10             	add    $0x10,%eax
438714:	8b 55 08             	mov    0x8(%ebp),%edx
438717:	89 42 fc             	mov    %eax,-0x4(%edx)
43871a:	8b 45 08             	mov    0x8(%ebp),%eax
43871d:	8b 40 c8             	mov    -0x38(%eax),%eax
438720:	80 78 38 00          	cmpb   $0x0,0x38(%eax)
438724:	0f 84 c0 00 00 00    	je     0x4387ea
43872a:	8b 45 08             	mov    0x8(%ebp),%eax
43872d:	80 78 df 00          	cmpb   $0x0,-0x21(%eax)
438731:	0f 85 b3 00 00 00    	jne    0x4387ea
438737:	8b 45 08             	mov    0x8(%ebp),%eax
43873a:	ff 40 f8             	incl   -0x8(%eax)
43873d:	8b 45 08             	mov    0x8(%ebp),%eax
438740:	ff 40 fc             	incl   -0x4(%eax)
438743:	8b 45 08             	mov    0x8(%ebp),%eax
438746:	8b 40 d8             	mov    -0x28(%eax),%eax
438749:	8b 40 14             	mov    0x14(%eax),%eax
43874c:	e8 2b 4b fe ff       	call   0x41d27c
438751:	8b 55 08             	mov    0x8(%ebp),%edx
438754:	89 42 b8             	mov    %eax,-0x48(%edx)
438757:	8b 45 08             	mov    0x8(%ebp),%eax
43875a:	f6 40 0c 01          	testb  $0x1,0xc(%eax)
43875e:	75 46                	jne    0x4387a6
438760:	8b 45 08             	mov    0x8(%ebp),%eax
438763:	8b 40 d8             	mov    -0x28(%eax),%eax
438766:	8b 40 14             	mov    0x14(%eax),%eax
438769:	e8 0e 4b fe ff       	call   0x41d27c
43876e:	8b 55 08             	mov    0x8(%ebp),%edx
438771:	89 42 b8             	mov    %eax,-0x48(%edx)
438774:	ba 14 00 00 ff       	mov    $0xff000014,%edx
438779:	b8 0f 00 00 ff       	mov    $0xff00000f,%eax
43877e:	e8 a1 99 fe ff       	call   0x422124
438783:	8b d0                	mov    %eax,%edx
438785:	8b 45 08             	mov    0x8(%ebp),%eax
438788:	8b 40 d8             	mov    -0x28(%eax),%eax
43878b:	8b 40 14             	mov    0x14(%eax),%eax
43878e:	e8 c5 4a fe ff       	call   0x41d258
438793:	8b 45 08             	mov    0x8(%ebp),%eax
438796:	8d 50 f0             	lea    -0x10(%eax),%edx
438799:	8b 45 08             	mov    0x8(%ebp),%eax
43879c:	8b 40 d8             	mov    -0x28(%eax),%eax
43879f:	e8 84 4e fe ff       	call   0x41d628
4387a4:	eb 24                	jmp    0x4387ca
4387a6:	8b 45 08             	mov    0x8(%ebp),%eax
4387a9:	8b 40 d8             	mov    -0x28(%eax),%eax
4387ac:	8b 40 14             	mov    0x14(%eax),%eax
4387af:	ba 0f 00 00 ff       	mov    $0xff00000f,%edx
4387b4:	e8 cb 4a fe ff       	call   0x41d284
4387b9:	8b 45 08             	mov    0x8(%ebp),%eax
4387bc:	8d 50 f0             	lea    -0x10(%eax),%edx
4387bf:	8b 45 08             	mov    0x8(%ebp),%eax
4387c2:	8b 40 d8             	mov    -0x28(%eax),%eax
4387c5:	e8 5e 4e fe ff       	call   0x41d628
4387ca:	8b 45 08             	mov    0x8(%ebp),%eax
4387cd:	8b 50 b8             	mov    -0x48(%eax),%edx
4387d0:	8b 45 08             	mov    0x8(%ebp),%eax
4387d3:	8b 40 d8             	mov    -0x28(%eax),%eax
4387d6:	8b 40 14             	mov    0x14(%eax),%eax
4387d9:	e8 a6 4a fe ff       	call   0x41d284
4387de:	8b 45 08             	mov    0x8(%ebp),%eax
4387e1:	ff 40 f0             	incl   -0x10(%eax)
4387e4:	8b 45 08             	mov    0x8(%ebp),%eax
4387e7:	ff 40 f4             	incl   -0xc(%eax)
4387ea:	8b 45 08             	mov    0x8(%ebp),%eax
4387ed:	80 78 bf 00          	cmpb   $0x0,-0x41(%eax)
4387f1:	0f 84 5a 01 00 00    	je     0x438951
4387f7:	8b 45 08             	mov    0x8(%ebp),%eax
4387fa:	8b 40 c8             	mov    -0x38(%eax),%eax
4387fd:	8b 58 40             	mov    0x40(%eax),%ebx
438800:	83 fb ff             	cmp    $0xffffffff,%ebx
438803:	7e 49                	jle    0x43884e
438805:	8b 45 08             	mov    0x8(%ebp),%eax
438808:	8b 45 08             	mov    0x8(%ebp),%eax
43880b:	8b 40 c0             	mov    -0x40(%eax),%eax
43880e:	e8 69 ca ff ff       	call   0x43527c
438813:	3b d8                	cmp    %eax,%ebx
438815:	7d 37                	jge    0x43884e
438817:	8b 45 08             	mov    0x8(%ebp),%eax
43881a:	8b 40 f4             	mov    -0xc(%eax),%eax
43881d:	50                   	push   %eax
43881e:	8b 45 08             	mov    0x8(%ebp),%eax
438821:	8b 40 c8             	mov    -0x38(%eax),%eax
438824:	8b 40 40             	mov    0x40(%eax),%eax
438827:	50                   	push   %eax
438828:	8b 45 08             	mov    0x8(%ebp),%eax
43882b:	8b 40 c8             	mov    -0x38(%eax),%eax
43882e:	8a 40 39             	mov    0x39(%eax),%al
438831:	50                   	push   %eax
438832:	8b 45 08             	mov    0x8(%ebp),%eax
438835:	8b 48 f0             	mov    -0x10(%eax),%ecx
438838:	8b 45 08             	mov    0x8(%ebp),%eax
43883b:	8b 50 d8             	mov    -0x28(%eax),%edx
43883e:	8b 45 08             	mov    0x8(%ebp),%eax
438841:	8b 40 c0             	mov    -0x40(%eax),%eax
438844:	e8 23 cd ff ff       	call   0x43556c
438849:	e9 0d 02 00 00       	jmp    0x438a5b
43884e:	b2 01                	mov    $0x1,%dl
438850:	a1 e8 ba 41 00       	mov    0x41bae8,%eax
438855:	e8 ce 77 fe ff       	call   0x420028
43885a:	8b 55 08             	mov    0x8(%ebp),%edx
43885d:	89 42 b4             	mov    %eax,-0x4c(%edx)
438860:	33 c0                	xor    %eax,%eax
438862:	55                   	push   %ebp
438863:	68 4a 89 43 00       	push   $0x43894a
438868:	64 ff 30             	push   %fs:(%eax)
43886b:	64 89 20             	mov    %esp,%fs:(%eax)
43886e:	8b 45 08             	mov    0x8(%ebp),%eax
438871:	8b 40 b4             	mov    -0x4c(%eax),%eax
438874:	b2 01                	mov    $0x1,%dl
438876:	8b 08                	mov    (%eax),%ecx
438878:	ff 51 3c             	call   *0x3c(%ecx)
43887b:	68 f8 7f 00 00       	push   $0x7ff8
438880:	6a 00                	push   $0x0
438882:	e8 65 e4 fc ff       	call   0x406cec
438887:	8b d0                	mov    %eax,%edx
438889:	8b 45 08             	mov    0x8(%ebp),%eax
43888c:	8b 40 b4             	mov    -0x4c(%eax),%eax
43888f:	e8 84 88 fe ff       	call   0x421118
438894:	8b 45 08             	mov    0x8(%ebp),%eax
438897:	8b 40 d8             	mov    -0x28(%eax),%eax
43889a:	8b 40 0c             	mov    0xc(%eax),%eax
43889d:	8b 40 18             	mov    0x18(%eax),%eax
4388a0:	8b 55 08             	mov    0x8(%ebp),%edx
4388a3:	89 42 b8             	mov    %eax,-0x48(%edx)
4388a6:	8b 45 08             	mov    0x8(%ebp),%eax
4388a9:	8b 40 d8             	mov    -0x28(%eax),%eax
4388ac:	8b 40 0c             	mov    0xc(%eax),%eax
4388af:	ba 12 00 00 ff       	mov    $0xff000012,%edx
4388b4:	e8 ff 41 fe ff       	call   0x41cab8
4388b9:	8b 45 08             	mov    0x8(%ebp),%eax
4388bc:	8b 40 b4             	mov    -0x4c(%eax),%eax
4388bf:	50                   	push   %eax
4388c0:	8b 45 08             	mov    0x8(%ebp),%eax
4388c3:	8b 40 b4             	mov    -0x4c(%eax),%eax
4388c6:	8b 10                	mov    (%eax),%edx
4388c8:	ff 52 20             	call   *0x20(%edx)
4388cb:	8b 55 08             	mov    0x8(%ebp),%edx
4388ce:	8b 52 fc             	mov    -0x4(%edx),%edx
4388d1:	8b 4d 08             	mov    0x8(%ebp),%ecx
4388d4:	8b 71 f4             	mov    -0xc(%ecx),%esi
4388d7:	2b d6                	sub    %esi,%edx
4388d9:	2b d0                	sub    %eax,%edx
4388db:	d1 fa                	sar    $1,%edx
4388dd:	79 03                	jns    0x4388e2
4388df:	83 d2 00             	adc    $0x0,%edx
4388e2:	8b 45 08             	mov    0x8(%ebp),%eax
4388e5:	03 d6                	add    %esi,%edx
4388e7:	42                   	inc    %edx
4388e8:	52                   	push   %edx
4388e9:	8b 45 08             	mov    0x8(%ebp),%eax
4388ec:	8b 40 b4             	mov    -0x4c(%eax),%eax
4388ef:	8b 10                	mov    (%eax),%edx
4388f1:	ff 52 2c             	call   *0x2c(%edx)
4388f4:	8b 55 08             	mov    0x8(%ebp),%edx
4388f7:	8b 52 f8             	mov    -0x8(%edx),%edx
4388fa:	8b 4d 08             	mov    0x8(%ebp),%ecx
4388fd:	8b 59 f0             	mov    -0x10(%ecx),%ebx
438900:	2b d3                	sub    %ebx,%edx
438902:	2b d0                	sub    %eax,%edx
438904:	d1 fa                	sar    $1,%edx
438906:	79 03                	jns    0x43890b
438908:	83 d2 00             	adc    $0x0,%edx
43890b:	8b 45 08             	mov    0x8(%ebp),%eax
43890e:	03 d3                	add    %ebx,%edx
438910:	42                   	inc    %edx
438911:	8b 45 08             	mov    0x8(%ebp),%eax
438914:	8b 40 d8             	mov    -0x28(%eax),%eax
438917:	59                   	pop    %ecx
438918:	e8 5f 4c fe ff       	call   0x41d57c
43891d:	8b 45 08             	mov    0x8(%ebp),%eax
438920:	8b 50 b8             	mov    -0x48(%eax),%edx
438923:	8b 45 08             	mov    0x8(%ebp),%eax
438926:	8b 40 d8             	mov    -0x28(%eax),%eax
438929:	8b 40 0c             	mov    0xc(%eax),%eax
43892c:	e8 87 41 fe ff       	call   0x41cab8
438931:	33 c0                	xor    %eax,%eax
438933:	5a                   	pop    %edx
438934:	59                   	pop    %ecx
438935:	59                   	pop    %ecx
438936:	64 89 10             	mov    %edx,%fs:(%eax)
438939:	68 5b 8a 43 00       	push   $0x438a5b
43893e:	8b 45 08             	mov    0x8(%ebp),%eax
438941:	8b 40 b4             	mov    -0x4c(%eax),%eax
438944:	e8 b3 ae fc ff       	call   0x4037fc
438949:	c3                   	ret
43894a:	e9 fd b5 fc ff       	jmp    0x403f4c
43894f:	eb ed                	jmp    0x43893e
438951:	8b 45 08             	mov    0x8(%ebp),%eax
438954:	8b 55 08             	mov    0x8(%ebp),%edx
438957:	8d 70 f0             	lea    -0x10(%eax),%esi
43895a:	8d 7a a4             	lea    -0x5c(%edx),%edi
43895d:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43895e:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43895f:	a5                   	movsl  %ds:(%esi),%es:(%edi)
438960:	a5                   	movsl  %ds:(%esi),%es:(%edi)
438961:	8b 45 08             	mov    0x8(%ebp),%eax
438964:	8b 40 c8             	mov    -0x38(%eax),%eax
438967:	8b 40 4c             	mov    0x4c(%eax),%eax
43896a:	8b 10                	mov    (%eax),%edx
43896c:	ff 52 2c             	call   *0x2c(%edx)
43896f:	8b 55 08             	mov    0x8(%ebp),%edx
438972:	8b 52 f8             	mov    -0x8(%edx),%edx
438975:	8b 4d 08             	mov    0x8(%ebp),%ecx
438978:	2b 51 f0             	sub    -0x10(%ecx),%edx
43897b:	3b c2                	cmp    %edx,%eax
43897d:	7d 4a                	jge    0x4389c9
43897f:	8b 45 08             	mov    0x8(%ebp),%eax
438982:	8b 40 c8             	mov    -0x38(%eax),%eax
438985:	8b 40 4c             	mov    0x4c(%eax),%eax
438988:	8b 10                	mov    (%eax),%edx
43898a:	ff 52 2c             	call   *0x2c(%edx)
43898d:	8b 55 08             	mov    0x8(%ebp),%edx
438990:	8b 52 f8             	mov    -0x8(%edx),%edx
438993:	8b 4d 08             	mov    0x8(%ebp),%ecx
438996:	2b 51 f0             	sub    -0x10(%ecx),%edx
438999:	2b d0                	sub    %eax,%edx
43899b:	d1 fa                	sar    $1,%edx
43899d:	79 03                	jns    0x4389a2
43899f:	83 d2 00             	adc    $0x0,%edx
4389a2:	8b 45 08             	mov    0x8(%ebp),%eax
4389a5:	03 50 f0             	add    -0x10(%eax),%edx
4389a8:	42                   	inc    %edx
4389a9:	8b 45 08             	mov    0x8(%ebp),%eax