47079a:	75 09                	jne    0x4707a5
47079c:	8b c6                	mov    %esi,%eax
47079e:	8b 08                	mov    (%eax),%ecx
4707a0:	ff 51 f0             	call   *-0x10(%ecx)
4707a3:	5e                   	pop    %esi
4707a4:	c3                   	ret
4707a5:	8b c6                	mov    %esi,%eax
4707a7:	e8 64 f4 fd ff       	call   0x44fc10
4707ac:	5e                   	pop    %esi
4707ad:	c3                   	ret
4707ae:	8b c0                	mov    %eax,%eax
4707b0:	53                   	push   %ebx
4707b1:	56                   	push   %esi
4707b2:	57                   	push   %edi
4707b3:	83 c4 b0             	add    $0xffffffb0,%esp
4707b6:	8b fa                	mov    %edx,%edi
4707b8:	8b d8                	mov    %eax,%ebx
4707ba:	f6 83 85 02 00 00 04 	testb  $0x4,0x285(%ebx)
4707c1:	74 4c                	je     0x47080f
4707c3:	8b 77 04             	mov    0x4(%edi),%esi
4707c6:	85 f6                	test   %esi,%esi
4707c8:	75 10                	jne    0x4707da
4707ca:	54                   	push   %esp
4707cb:	8b c3                	mov    %ebx,%eax
4707cd:	e8 da 11 fe ff       	call   0x4519ac
4707d2:	50                   	push   %eax
4707d3:	e8 10 66 f9 ff       	call   0x406de8
4707d8:	8b f0                	mov    %eax,%esi
4707da:	8d 54 24 40          	lea    0x40(%esp),%edx
4707de:	8b c3                	mov    %ebx,%eax
4707e0:	8b 08                	mov    (%eax),%ecx
4707e2:	ff 51 44             	call   *0x44(%ecx)
4707e5:	8d 44 24 40          	lea    0x40(%esp),%eax
4707e9:	50                   	push   %eax
4707ea:	56                   	push   %esi
4707eb:	6a 01                	push   $0x1
4707ed:	8b 83 60 02 00 00    	mov    0x260(%ebx),%eax
4707f3:	50                   	push   %eax
4707f4:	e8 1f 70 f9 ff       	call   0x407818
4707f9:	83 7f 04 00          	cmpl   $0x0,0x4(%edi)
4707fd:	75 19                	jne    0x470818
4707ff:	54                   	push   %esp
470800:	8b c3                	mov    %ebx,%eax
470802:	e8 a5 11 fe ff       	call   0x4519ac
470807:	50                   	push   %eax
470808:	e8 eb 66 f9 ff       	call   0x406ef8
47080d:	eb 09                	jmp    0x470818
47080f:	8b d7                	mov    %edi,%edx
470811:	8b c3                	mov    %ebx,%eax
470813:	e8 04 f1 fd ff       	call   0x44f91c
470818:	83 c4 50             	add    $0x50,%esp
47081b:	5f                   	pop    %edi
47081c:	5e                   	pop    %esi
47081d:	5b                   	pop    %ebx
47081e:	c3                   	ret
47081f:	90                   	nop
470820:	53                   	push   %ebx
470821:	56                   	push   %esi
470822:	57                   	push   %edi
470823:	55                   	push   %ebp
470824:	8b ea                	mov    %edx,%ebp
470826:	8b f0                	mov    %eax,%esi
470828:	b2 01                	mov    $0x1,%dl
47082a:	8b c6                	mov    %esi,%eax
47082c:	e8 8f be fe ff       	call   0x45c6c0
470831:	8b f8                	mov    %eax,%edi
470833:	33 db                	xor    %ebx,%ebx
470835:	8b c7                	mov    %edi,%eax
470837:	8b 15 9c ae 45 00    	mov    0x45ae9c,%edx
47083d:	e8 66 32 f9 ff       	call   0x403aa8
470842:	84 c0                	test   %al,%al
470844:	74 02                	je     0x470848
470846:	8b df                	mov    %edi,%ebx
470848:	85 db                	test   %ebx,%ebx
47084a:	74 2b                	je     0x470877
47084c:	80 bb 77 02 00 00 01 	cmpb   $0x1,0x277(%ebx)
470853:	75 22                	jne    0x470877
470855:	8b 45 04             	mov    0x4(%ebp),%eax
470858:	50                   	push   %eax
470859:	8b 86 78 02 00 00    	mov    0x278(%esi),%eax
47085f:	50                   	push   %eax
470860:	8b 00                	mov    (%eax),%eax
470862:	ff 50 1c             	call   *0x1c(%eax)
470865:	83 7d 04 00          	cmpl   $0x0,0x4(%ebp)
470869:	75 0c                	jne    0x470877
47086b:	6a 00                	push   $0x0
47086d:	6a 00                	push   $0x0
47086f:	6a 00                	push   $0x0
470871:	56                   	push   %esi
470872:	e8 2d 08 00 00       	call   0x4710a4
470877:	5d                   	pop    %ebp
470878:	5f                   	pop    %edi
470879:	5e                   	pop    %esi
47087a:	5b                   	pop    %ebx
47087b:	c3                   	ret
47087c:	55                   	push   %ebp
47087d:	8b ec                	mov    %esp,%ebp
47087f:	51                   	push   %ecx
470880:	89 45 fc             	mov    %eax,-0x4(%ebp)
470883:	8b 45 fc             	mov    -0x4(%ebp),%eax
470886:	e8 ed 05 fe ff       	call   0x450e78
47088b:	8b 45 fc             	mov    -0x4(%ebp),%eax
47088e:	8b 80 50 02 00 00    	mov    0x250(%eax),%eax
470894:	f6 40 2c 01          	testb  $0x1,0x2c(%eax)
470898:	74 62                	je     0x4708fc
47089a:	8b 45 fc             	mov    -0x4(%ebp),%eax
47089d:	80 b8 91 02 00 00 00 	cmpb   $0x0,0x291(%eax)
4708a4:	75 56                	jne    0x4708fc
4708a6:	8b 45 fc             	mov    -0x4(%ebp),%eax
4708a9:	e8 9e 14 fe ff       	call   0x451d4c
4708ae:	84 c0                	test   %al,%al
4708b0:	74 4a                	je     0x4708fc
4708b2:	8b 45 fc             	mov    -0x4(%ebp),%eax
4708b5:	c6 80 91 02 00 00 01 	movb   $0x1,0x291(%eax)
4708bc:	33 c0                	xor    %eax,%eax
4708be:	55                   	push   %ebp
4708bf:	68 f5 08 47 00       	push   $0x4708f5
4708c4:	64 ff 30             	push   %fs:(%eax)
4708c7:	64 89 20             	mov    %esp,%fs:(%eax)
4708ca:	8b 45 fc             	mov    -0x4(%ebp),%eax
4708cd:	8b 48 70             	mov    0x70(%eax),%ecx
4708d0:	ba 0b fe ff ff       	mov    $0xfffffe0b,%edx
4708d5:	8b 45 fc             	mov    -0x4(%ebp),%eax
4708d8:	e8 ff f5 ff ff       	call   0x46fedc
4708dd:	33 c0                	xor    %eax,%eax
4708df:	5a                   	pop    %edx
4708e0:	59                   	pop    %ecx
4708e1:	59                   	pop    %ecx
4708e2:	64 89 10             	mov    %edx,%fs:(%eax)
4708e5:	68 fc 08 47 00       	push   $0x4708fc
4708ea:	8b 45 fc             	mov    -0x4(%ebp),%eax
4708ed:	c6 80 91 02 00 00 00 	movb   $0x0,0x291(%eax)
4708f4:	c3                   	ret
4708f5:	e9 b6 37 f9 ff       	jmp    0x4040b0
4708fa:	eb ee                	jmp    0x4708ea
4708fc:	59                   	pop    %ecx
4708fd:	5d                   	pop    %ebp
4708fe:	c3                   	ret
4708ff:	90                   	nop
470900:	55                   	push   %ebp
470901:	8b ec                	mov    %esp,%ebp
470903:	51                   	push   %ecx
470904:	89 45 fc             	mov    %eax,-0x4(%ebp)
470907:	8b 45 fc             	mov    -0x4(%ebp),%eax
47090a:	e8 21 05 fe ff       	call   0x450e30
47090f:	8b 45 fc             	mov    -0x4(%ebp),%eax
470912:	8b 80 50 02 00 00    	mov    0x250(%eax),%eax
470918:	f6 40 2c 08          	testb  $0x8,0x2c(%eax)
47091c:	74 68                	je     0x470986
47091e:	8b 45 fc             	mov    -0x4(%ebp),%eax
470921:	80 b8 93 02 00 00 00 	cmpb   $0x0,0x293(%eax)
470928:	75 5c                	jne    0x470986
47092a:	8b 45 fc             	mov    -0x4(%ebp),%eax
47092d:	e8 1a 14 fe ff       	call   0x451d4c
470932:	84 c0                	test   %al,%al
470934:	74 50                	je     0x470986
470936:	8b 45 fc             	mov    -0x4(%ebp),%eax
470939:	c6 80 93 02 00 00 01 	movb   $0x1,0x293(%eax)
470940:	33 c0                	xor    %eax,%eax
470942:	55                   	push   %ebp
470943:	68 7f 09 47 00       	push   $0x47097f
470948:	64 ff 30             	push   %fs:(%eax)
47094b:	64 89 20             	mov    %esp,%fs:(%eax)
47094e:	8b 45 fc             	mov    -0x4(%ebp),%eax
470951:	8b 10                	mov    (%eax),%edx
470953:	ff 52 50             	call   *0x50(%edx)
470956:	f6 d8                	neg    %al
470958:	1b c9                	sbb    %ecx,%ecx
47095a:	ba fe fd ff ff       	mov    $0xfffffdfe,%edx
47095f:	8b 45 fc             	mov    -0x4(%ebp),%eax
470962:	e8 61 f6 ff ff       	call   0x46ffc8
470967:	33 c0                	xor    %eax,%eax
470969:	5a                   	pop    %edx
47096a:	59                   	pop    %ecx
47096b:	59                   	pop    %ecx
47096c:	64 89 10             	mov    %edx,%fs:(%eax)
47096f:	68 86 09 47 00       	push   $0x470986
470974:	8b 45 fc             	mov    -0x4(%ebp),%eax
470977:	c6 80 93 02 00 00 00 	movb   $0x0,0x293(%eax)
47097e:	c3                   	ret
47097f:	e9 2c 37 f9 ff       	jmp    0x4040b0
470984:	eb ee                	jmp    0x470974
470986:	59                   	pop    %ecx
470987:	5d                   	pop    %ebp
470988:	c3                   	ret
470989:	8d 40 00             	lea    0x0(%eax),%eax
47098c:	55                   	push   %ebp
47098d:	8b ec                	mov    %esp,%ebp
47098f:	33 c9                	xor    %ecx,%ecx
470991:	51                   	push   %ecx
470992:	51                   	push   %ecx
470993:	51                   	push   %ecx
470994:	51                   	push   %ecx
470995:	51                   	push   %ecx
470996:	89 45 fc             	mov    %eax,-0x4(%ebp)
470999:	33 c0                	xor    %eax,%eax
47099b:	55                   	push   %ebp
47099c:	68 81 0a 47 00       	push   $0x470a81
4709a1:	64 ff 30             	push   %fs:(%eax)
4709a4:	64 89 20             	mov    %esp,%fs:(%eax)
4709a7:	8b 45 fc             	mov    -0x4(%ebp),%eax
4709aa:	e8 f1 04 fe ff       	call   0x450ea0
4709af:	8b 45 fc             	mov    -0x4(%ebp),%eax
4709b2:	8b 80 50 02 00 00    	mov    0x250(%eax),%eax
4709b8:	f6 40 2c 06          	testb  $0x6,0x2c(%eax)
4709bc:	0f 84 a9 00 00 00    	je     0x470a6b
4709c2:	8b 45 fc             	mov    -0x4(%ebp),%eax
4709c5:	80 b8 92 02 00 00 00 	cmpb   $0x0,0x292(%eax)
4709cc:	0f 85 99 00 00 00    	jne    0x470a6b
4709d2:	8b 45 fc             	mov    -0x4(%ebp),%eax
4709d5:	e8 72 13 fe ff       	call   0x451d4c
4709da:	84 c0                	test   %al,%al
4709dc:	0f 84 89 00 00 00    	je     0x470a6b
4709e2:	8b 45 fc             	mov    -0x4(%ebp),%eax
4709e5:	c6 80 92 02 00 00 01 	movb   $0x1,0x292(%eax)
4709ec:	33 c0                	xor    %eax,%eax
4709ee:	55                   	push   %ebp
4709ef:	68 64 0a 47 00       	push   $0x470a64
4709f4:	64 ff 30             	push   %fs:(%eax)
4709f7:	64 89 20             	mov    %esp,%fs:(%eax)
4709fa:	8b 45 fc             	mov    -0x4(%ebp),%eax
4709fd:	8b 80 50 02 00 00    	mov    0x250(%eax),%eax
470a03:	f6 40 2c 02          	testb  $0x2,0x2c(%eax)
470a07:	74 16                	je     0x470a1f
470a09:	8b 45 fc             	mov    -0x4(%ebp),%eax
470a0c:	8b 40 68             	mov    0x68(%eax),%eax
470a0f:	8b 48 18             	mov    0x18(%eax),%ecx
470a12:	ba ff fd ff ff       	mov    $0xfffffdff,%edx
470a17:	8b 45 fc             	mov    -0x4(%ebp),%eax
470a1a:	e8 dd f4 ff ff       	call   0x46fefc
470a1f:	8b 45 fc             	mov    -0x4(%ebp),%eax
470a22:	8b 80 50 02 00 00    	mov    0x250(%eax),%eax
470a28:	f6 40 2c 04          	testb  $0x4,0x2c(%eax)
470a2c:	74 1e                	je     0x470a4c
470a2e:	8d 55 ec             	lea    -0x14(%ebp),%edx
470a31:	8b 45 fc             	mov    -0x4(%ebp),%eax
470a34:	8b 40 68             	mov    0x68(%eax),%eax
470a37:	e8 08 df ff ff       	call   0x46e944
470a3c:	8d 4d ec             	lea    -0x14(%ebp),%ecx
470a3f:	ba 00 fe ff ff       	mov    $0xfffffe00,%edx
470a44:	8b 45 fc             	mov    -0x4(%ebp),%eax
470a47:	e8 f0 f8 ff ff       	call   0x47033c
470a4c:	33 c0                	xor    %eax,%eax
470a4e:	5a                   	pop    %edx
470a4f:	59                   	pop    %ecx
470a50:	59                   	pop    %ecx
470a51:	64 89 10             	mov    %edx,%fs:(%eax)
470a54:	68 6b 0a 47 00       	push   $0x470a6b
470a59:	8b 45 fc             	mov    -0x4(%ebp),%eax
470a5c:	c6 80 92 02 00 00 00 	movb   $0x0,0x292(%eax)
470a63:	c3                   	ret
470a64:	e9 47 36 f9 ff       	jmp    0x4040b0
470a69:	eb ee                	jmp    0x470a59
470a6b:	33 c0                	xor    %eax,%eax
470a6d:	5a                   	pop    %edx
470a6e:	59                   	pop    %ecx
470a6f:	59                   	pop    %ecx
470a70:	64 89 10             	mov    %edx,%fs:(%eax)
470a73:	68 88 0a 47 00       	push   $0x470a88
470a78:	8d 45 ec             	lea    -0x14(%ebp),%eax
470a7b:	e8 64 f2 f9 ff       	call   0x40fce4
470a80:	c3                   	ret
470a81:	e9 2a 36 f9 ff       	jmp    0x4040b0
470a86:	eb f0                	jmp    0x470a78
470a88:	8b e5                	mov    %ebp,%esp
470a8a:	5d                   	pop    %ebp
470a8b:	c3                   	ret
470a8c:	53                   	push   %ebx
470a8d:	56                   	push   %esi
470a8e:	57                   	push   %edi
470a8f:	83 c4 e0             	add    $0xffffffe0,%esp
470a92:	8b fa                	mov    %edx,%edi
470a94:	8b d8                	mov    %eax,%ebx
470a96:	8b c3                	mov    %ebx,%eax
470a98:	66 be b6 ff          	mov    $0xffb6,%si
470a9c:	e8 77 30 f9 ff       	call   0x403b18
470aa1:	84 c0                	test   %al,%al
470aa3:	74 73                	je     0x470b18
470aa5:	66 83 bb a8 02 00 00 	cmpw   $0x0,0x2a8(%ebx)
470aac:	00
470aad:	74 69                	je     0x470b18
470aaf:	8d 44 24 02          	lea    0x2(%esp),%eax
470ab3:	33 c9                	xor    %ecx,%ecx
470ab5:	ba 1c 00 00 00       	mov    $0x1c,%edx
470aba:	e8 99 27 f9 ff       	call   0x403258
470abf:	8b c3                	mov    %ebx,%eax
470ac1:	e8 e6 0e fe ff       	call   0x4519ac
470ac6:	89 44 24 02          	mov    %eax,0x2(%esp)
470aca:	c7 44 24 06 00 01 00 	movl   $0x100,0x6(%esp)
470ad1:	00
470ad2:	8b 47 04             	mov    0x4(%edi),%eax
470ad5:	89 44 24 0a          	mov    %eax,0xa(%esp)
470ad9:	8b 47 08             	mov    0x8(%edi),%eax
470adc:	89 44 24 0e          	mov    %eax,0xe(%esp)
470ae0:	54                   	push   %esp
470ae1:	8d 44 24 06          	lea    0x6(%esp),%eax
470ae5:	50                   	push   %eax
470ae6:	0f b7 83 a8 02 00 00 	movzwl 0x2a8(%ebx),%eax
470aed:	50                   	push   %eax
470aee:	8b 83 a4 02 00 00    	mov    0x2a4(%ebx),%eax
470af4:	50                   	push   %eax
470af5:	e8 26 6d f9 ff       	call   0x407820
470afa:	85 c0                	test   %eax,%eax
470afc:	74 1a                	je     0x470b18
470afe:	8d 44 24 02          	lea    0x2(%esp),%eax
470b02:	50                   	push   %eax
470b03:	8b 83 68 02 00 00    	mov    0x268(%ebx),%eax
470b09:	50                   	push   %eax
470b0a:	8b 00                	mov    (%eax),%eax
470b0c:	ff 50 10             	call   *0x10(%eax)
470b0f:	c7 47 0c 01 00 00 00 	movl   $0x1,0xc(%edi)
470b16:	eb 09                	jmp    0x470b21
470b18:	8b d7                	mov    %edi,%edx
470b1a:	8b c3                	mov    %ebx,%eax
470b1c:	e8 9f 02 fe ff       	call   0x450dc0
470b21:	83 c4 20             	add    $0x20,%esp
470b24:	5f                   	pop    %edi
470b25:	5e                   	pop    %esi
470b26:	5b                   	pop    %ebx
470b27:	c3                   	ret
470b28:	53                   	push   %ebx
470b29:	83 c4 f0             	add    $0xfffffff0,%esp
470b2c:	8b d8                	mov    %eax,%ebx
470b2e:	b2 01                	mov    $0x1,%dl
470b30:	8b c3                	mov    %ebx,%eax
470b32:	e8 89 bb fe ff       	call   0x45c6c0
470b37:	85 c0                	test   %eax,%eax
470b39:	74 08                	je     0x470b43
470b3b:	3b 98 c4 02 00 00    	cmp    0x2c4(%eax),%ebx
470b41:	74 30                	je     0x470b73
470b43:	8b d4                	mov    %esp,%edx
470b45:	8b c3                	mov    %ebx,%eax
470b47:	e8 38 8c fd ff       	call   0x449784
470b4c:	54                   	push   %esp
470b4d:	8b c3                	mov    %ebx,%eax
470b4f:	e8 48 0c fe ff       	call   0x45179c
470b54:	50                   	push   %eax
470b55:	6a 00                	push   $0x0
470b57:	8b c3                	mov    %ebx,%eax
470b59:	85 c0                	test   %eax,%eax
470b5b:	74 05                	je     0x470b62
470b5d:	2d 34 fd ff ff       	sub    $0xfffffd34,%eax
470b62:	50                   	push   %eax
470b63:	6a 00                	push   $0x0
470b65:	6a fc                	push   $0xfffffffc
470b67:	8b 83 60 02 00 00    	mov    0x260(%ebx),%eax
470b6d:	50                   	push   %eax
470b6e:	8b 00                	mov    (%eax),%eax
470b70:	ff 50 2c             	call   *0x2c(%eax)
470b73:	83 c4 10             	add    $0x10,%esp