4448ba:	8b 44 24 08          	mov    0x8(%esp),%eax
4448be:	56                   	push   %esi
4448bf:	8b 74 24 08          	mov    0x8(%esp),%esi
4448c3:	57                   	push   %edi
4448c4:	89 46 24             	mov    %eax,0x24(%esi)
4448c7:	e8 35 90 02 00       	call   0x46d901
4448cc:	0f b7 4c 24 14       	movzwl 0x14(%esp),%ecx
4448d1:	8b 40 0c             	mov    0xc(%eax),%eax
4448d4:	8b 3d 84 08 4b 00    	mov    0x4b0884,%edi
4448da:	51                   	push   %ecx
4448db:	50                   	push   %eax
4448dc:	ff d7                	call   *%edi
4448de:	85 c0                	test   %eax,%eax
4448e0:	89 46 14             	mov    %eax,0x14(%esi)
4448e3:	75 0b                	jne    0x4448f0
4448e5:	68 00 7f 00 00       	push   $0x7f00
4448ea:	50                   	push   %eax
4448eb:	ff d7                	call   *%edi
4448ed:	89 46 14             	mov    %eax,0x14(%esi)
4448f0:	56                   	push   %esi
4448f1:	e8 e7 e9 ff ff       	call   0x4432dd
4448f6:	5f                   	pop    %edi
4448f7:	5e                   	pop    %esi
4448f8:	c2 0c 00             	ret    $0xc
4448fb:	55                   	push   %ebp
4448fc:	8b ec                	mov    %esp,%ebp
4448fe:	83 ec 34             	sub    $0x34,%esp
444901:	e8 fb 8f 02 00       	call   0x46d901
444906:	89 45 fc             	mov    %eax,-0x4(%ebp)
444909:	8b 40 18             	mov    0x18(%eax),%eax
44490c:	f7 d0                	not    %eax
44490e:	21 45 08             	and    %eax,0x8(%ebp)
444911:	75 08                	jne    0x44491b
444913:	33 c0                	xor    %eax,%eax
444915:	40                   	inc    %eax
444916:	e9 ab 02 00 00       	jmp    0x444bc6
44491b:	53                   	push   %ebx
44491c:	56                   	push   %esi
44491d:	57                   	push   %edi
44491e:	6a 28                	push   $0x28
444920:	33 ff                	xor    %edi,%edi
444922:	8d 45 cc             	lea    -0x34(%ebp),%eax
444925:	57                   	push   %edi
444926:	50                   	push   %eax
444927:	33 f6                	xor    %esi,%esi
444929:	e8 12 39 fd ff       	call   0x418240
44492e:	a1 28 07 4b 00       	mov    0x4b0728,%eax
444933:	83 c4 0c             	add    $0xc,%esp
444936:	89 45 d0             	mov    %eax,-0x30(%ebp)
444939:	e8 c3 8f 02 00       	call   0x46d901
44493e:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
444942:	8b 40 08             	mov    0x8(%eax),%eax
444945:	6a 08                	push   $0x8
444947:	89 45 dc             	mov    %eax,-0x24(%ebp)
44494a:	a1 18 c4 4a 00       	mov    0x4ac418,%eax
44494f:	5b                   	pop    %ebx
444950:	89 45 e4             	mov    %eax,-0x1c(%ebp)
444953:	89 5d f4             	mov    %ebx,-0xc(%ebp)
444956:	74 1c                	je     0x444974
444958:	8d 45 cc             	lea    -0x34(%ebp),%eax
44495b:	50                   	push   %eax
44495c:	c7 45 cc 0b 00 00 00 	movl   $0xb,-0x34(%ebp)
444963:	c7 45 f0 5c af 48 00 	movl   $0x48af5c,-0x10(%ebp)
44496a:	e8 6e e9 ff ff       	call   0x4432dd
44496f:	85 c0                	test   %eax,%eax
444971:	74 01                	je     0x444974
444973:	46                   	inc    %esi
444974:	f6 45 08 20          	testb  $0x20,0x8(%ebp)
444978:	74 1b                	je     0x444995
44497a:	80 4d cc 8b          	orb    $0x8b,-0x34(%ebp)
44497e:	8d 45 cc             	lea    -0x34(%ebp),%eax
444981:	50                   	push   %eax
444982:	c7 45 f0 a0 af 48 00 	movl   $0x48afa0,-0x10(%ebp)
444989:	e8 4f e9 ff ff       	call   0x4432dd
44498e:	85 c0                	test   %eax,%eax
444990:	74 03                	je     0x444995
444992:	83 ce 20             	or     $0x20,%esi
444995:	f6 45 08 02          	testb  $0x2,0x8(%ebp)
444999:	74 21                	je     0x4449bc
44499b:	8d 45 cc             	lea    -0x34(%ebp),%eax
44499e:	50                   	push   %eax
44499f:	89 7d cc             	mov    %edi,-0x34(%ebp)
4449a2:	c7 45 f0 68 af 48 00 	movl   $0x48af68,-0x10(%ebp)
4449a9:	c7 45 e8 10 00 00 00 	movl   $0x10,-0x18(%ebp)
4449b0:	e8 28 e9 ff ff       	call   0x4432dd
4449b5:	85 c0                	test   %eax,%eax
4449b7:	74 03                	je     0x4449bc
4449b9:	83 ce 02             	or     $0x2,%esi
4449bc:	f6 45 08 04          	testb  $0x4,0x8(%ebp)
4449c0:	74 20                	je     0x4449e2
4449c2:	68 01 7a 00 00       	push   $0x7a01
4449c7:	68 7c af 48 00       	push   $0x48af7c
4449cc:	8d 45 cc             	lea    -0x34(%ebp),%eax
4449cf:	50                   	push   %eax
4449d0:	89 5d cc             	mov    %ebx,-0x34(%ebp)
4449d3:	89 7d e8             	mov    %edi,-0x18(%ebp)
4449d6:	e8 df fe ff ff       	call   0x4448ba
4449db:	85 c0                	test   %eax,%eax
4449dd:	74 03                	je     0x4449e2
4449df:	83 ce 04             	or     $0x4,%esi
4449e2:	84 5d 08             	test   %bl,0x8(%ebp)
4449e5:	74 27                	je     0x444a0e
4449e7:	68 02 7a 00 00       	push   $0x7a02
4449ec:	68 8c af 48 00       	push   $0x48af8c
4449f1:	8d 45 cc             	lea    -0x34(%ebp),%eax
4449f4:	50                   	push   %eax
4449f5:	c7 45 cc 0b 00 00 00 	movl   $0xb,-0x34(%ebp)
4449fc:	c7 45 e8 06 00 00 00 	movl   $0x6,-0x18(%ebp)
444a03:	e8 b2 fe ff ff       	call   0x4448ba
444a08:	85 c0                	test   %eax,%eax
444a0a:	74 02                	je     0x444a0e
444a0c:	0b f3                	or     %ebx,%esi
444a0e:	f6 45 08 10          	testb  $0x10,0x8(%ebp)
444a12:	74 1d                	je     0x444a31
444a14:	68 c0 3f 00 00       	push   $0x3fc0
444a19:	8d 45 f4             	lea    -0xc(%ebp),%eax
444a1c:	50                   	push   %eax
444a1d:	c7 45 f8 ff 00 00 00 	movl   $0xff,-0x8(%ebp)
444a24:	e8 54 f3 ff ff       	call   0x443d7d
444a29:	0b f0                	or     %eax,%esi
444a2b:	66 81 65 08 3f c0    	andw   $0xc03f,0x8(%ebp)
444a31:	f6 45 08 40          	testb  $0x40,0x8(%ebp)
444a35:	74 14                	je     0x444a4b
444a37:	6a 40                	push   $0x40
444a39:	8d 45 f4             	lea    -0xc(%ebp),%eax
444a3c:	50                   	push   %eax
444a3d:	c7 45 f8 10 00 00 00 	movl   $0x10,-0x8(%ebp)
444a44:	e8 34 f3 ff ff       	call   0x443d7d
444a49:	0b f0                	or     %eax,%esi
444a4b:	f6 45 08 80          	testb  $0x80,0x8(%ebp)
444a4f:	74 17                	je     0x444a68
444a51:	68 80 00 00 00       	push   $0x80
444a56:	8d 45 f4             	lea    -0xc(%ebp),%eax
444a59:	50                   	push   %eax
444a5a:	c7 45 f8 02 00 00 00 	movl   $0x2,-0x8(%ebp)
444a61:	e8 17 f3 ff ff       	call   0x443d7d
444a66:	0b f0                	or     %eax,%esi
444a68:	b8 00 01 00 00       	mov    $0x100,%eax
444a6d:	85 45 08             	test   %eax,0x8(%ebp)
444a70:	74 0f                	je     0x444a81
444a72:	50                   	push   %eax
444a73:	8d 45 f4             	lea    -0xc(%ebp),%eax
444a76:	50                   	push   %eax
444a77:	89 5d f8             	mov    %ebx,-0x8(%ebp)
444a7a:	e8 fe f2 ff ff       	call   0x443d7d
444a7f:	0b f0                	or     %eax,%esi
444a81:	b8 00 02 00 00       	mov    $0x200,%eax
444a86:	85 45 08             	test   %eax,0x8(%ebp)
444a89:	74 13                	je     0x444a9e
444a8b:	50                   	push   %eax
444a8c:	8d 45 f4             	lea    -0xc(%ebp),%eax
444a8f:	50                   	push   %eax
444a90:	c7 45 f8 20 00 00 00 	movl   $0x20,-0x8(%ebp)
444a97:	e8 e1 f2 ff ff       	call   0x443d7d
444a9c:	0b f0                	or     %eax,%esi
444a9e:	bb 00 04 00 00       	mov    $0x400,%ebx
444aa3:	85 5d 08             	test   %ebx,0x8(%ebp)
444aa6:	74 13                	je     0x444abb
444aa8:	53                   	push   %ebx
444aa9:	8d 45 f4             	lea    -0xc(%ebp),%eax
444aac:	50                   	push   %eax
444aad:	c7 45 f8 01 00 00 00 	movl   $0x1,-0x8(%ebp)
444ab4:	e8 c4 f2 ff ff       	call   0x443d7d
444ab9:	0b f0                	or     %eax,%esi
444abb:	bf 00 08 00 00       	mov    $0x800,%edi
444ac0:	85 7d 08             	test   %edi,0x8(%ebp)
444ac3:	74 13                	je     0x444ad8
444ac5:	57                   	push   %edi
444ac6:	8d 45 f4             	lea    -0xc(%ebp),%eax
444ac9:	50                   	push   %eax
444aca:	c7 45 f8 40 00 00 00 	movl   $0x40,-0x8(%ebp)
444ad1:	e8 a7 f2 ff ff       	call   0x443d7d
444ad6:	0b f0                	or     %eax,%esi
444ad8:	b8 00 10 00 00       	mov    $0x1000,%eax
444add:	85 45 08             	test   %eax,0x8(%ebp)
444ae0:	74 13                	je     0x444af5
444ae2:	50                   	push   %eax
444ae3:	8d 45 f4             	lea    -0xc(%ebp),%eax
444ae6:	50                   	push   %eax
444ae7:	c7 45 f8 04 00 00 00 	movl   $0x4,-0x8(%ebp)
444aee:	e8 8a f2 ff ff       	call   0x443d7d
444af3:	0b f0                	or     %eax,%esi
444af5:	b8 00 20 00 00       	mov    $0x2000,%eax
444afa:	85 45 08             	test   %eax,0x8(%ebp)
444afd:	74 13                	je     0x444b12
444aff:	50                   	push   %eax
444b00:	8d 45 f4             	lea    -0xc(%ebp),%eax
444b03:	50                   	push   %eax
444b04:	c7 45 f8 80 00 00 00 	movl   $0x80,-0x8(%ebp)
444b0b:	e8 6d f2 ff ff       	call   0x443d7d
444b10:	0b f0                	or     %eax,%esi
444b12:	b8 00 40 00 00       	mov    $0x4000,%eax
444b17:	85 45 08             	test   %eax,0x8(%ebp)
444b1a:	74 0f                	je     0x444b2b
444b1c:	50                   	push   %eax
444b1d:	8d 45 f4             	lea    -0xc(%ebp),%eax
444b20:	50                   	push   %eax
444b21:	89 7d f8             	mov    %edi,-0x8(%ebp)
444b24:	e8 54 f2 ff ff       	call   0x443d7d
444b29:	0b f0                	or     %eax,%esi
444b2b:	bf 00 80 00 00       	mov    $0x8000,%edi
444b30:	85 7d 08             	test   %edi,0x8(%ebp)
444b33:	74 0f                	je     0x444b44
444b35:	57                   	push   %edi
444b36:	8d 45 f4             	lea    -0xc(%ebp),%eax
444b39:	50                   	push   %eax
444b3a:	89 5d f8             	mov    %ebx,-0x8(%ebp)
444b3d:	e8 3b f2 ff ff       	call   0x443d7d
444b42:	0b f0                	or     %eax,%esi
444b44:	b8 00 00 01 00       	mov    $0x10000,%eax
444b49:	85 45 08             	test   %eax,0x8(%ebp)
444b4c:	74 13                	je     0x444b61
444b4e:	50                   	push   %eax
444b4f:	8d 45 f4             	lea    -0xc(%ebp),%eax
444b52:	50                   	push   %eax
444b53:	c7 45 f8 00 02 00 00 	movl   $0x200,-0x8(%ebp)
444b5a:	e8 1e f2 ff ff       	call   0x443d7d
444b5f:	0b f0                	or     %eax,%esi
444b61:	b8 00 00 02 00       	mov    $0x20000,%eax
444b66:	85 45 08             	test   %eax,0x8(%ebp)
444b69:	74 13                	je     0x444b7e
444b6b:	50                   	push   %eax
444b6c:	8d 45 f4             	lea    -0xc(%ebp),%eax
444b6f:	50                   	push   %eax
444b70:	c7 45 f8 00 01 00 00 	movl   $0x100,-0x8(%ebp)
444b77:	e8 01 f2 ff ff       	call   0x443d7d
444b7c:	0b f0                	or     %eax,%esi
444b7e:	b8 00 00 04 00       	mov    $0x40000,%eax
444b83:	85 45 08             	test   %eax,0x8(%ebp)
444b86:	74 0f                	je     0x444b97
444b88:	50                   	push   %eax
444b89:	8d 45 f4             	lea    -0xc(%ebp),%eax
444b8c:	50                   	push   %eax
444b8d:	89 7d f8             	mov    %edi,-0x8(%ebp)
444b90:	e8 e8 f1 ff ff       	call   0x443d7d
444b95:	0b f0                	or     %eax,%esi
444b97:	8b 4d fc             	mov    -0x4(%ebp),%ecx
444b9a:	09 71 18             	or     %esi,0x18(%ecx)
444b9d:	8b 41 18             	mov    0x18(%ecx),%eax
444ba0:	ba c0 3f 00 00       	mov    $0x3fc0,%edx
444ba5:	8b f8                	mov    %eax,%edi
444ba7:	23 fa                	and    %edx,%edi
444ba9:	3b fa                	cmp    %edx,%edi
444bab:	75 09                	jne    0x444bb6
444bad:	83 c8 10             	or     $0x10,%eax
444bb0:	89 41 18             	mov    %eax,0x18(%ecx)
444bb3:	83 ce 10             	or     $0x10,%esi
444bb6:	8b c6                	mov    %esi,%eax
444bb8:	23 45 08             	and    0x8(%ebp),%eax
444bbb:	5f                   	pop    %edi
444bbc:	2b 45 08             	sub    0x8(%ebp),%eax
444bbf:	5e                   	pop    %esi
444bc0:	f7 d8                	neg    %eax
444bc2:	1b c0                	sbb    %eax,%eax
444bc4:	40                   	inc    %eax
444bc5:	5b                   	pop    %ebx
444bc6:	c9                   	leave
444bc7:	c2 04 00             	ret    $0x4
444bca:	56                   	push   %esi
444bcb:	68 50 ba 46 00       	push   $0x46ba50
444bd0:	b9 a0 c2 4a 00       	mov    $0x4ac2a0,%ecx
444bd5:	e8 f4 97 02 00       	call   0x46e3ce
444bda:	8b f0                	mov    %eax,%esi
444bdc:	ff 15 cc 06 4b 00    	call   *0x4b06cc
444be2:	89 46 68             	mov    %eax,0x68(%esi)
444be5:	ff 15 d0 06 4b 00    	call   *0x4b06d0
444beb:	0f bf c8             	movswl %ax,%ecx
444bee:	c1 e8 10             	shr    $0x10,%eax
444bf1:	0f bf c0             	movswl %ax,%eax
444bf4:	89 46 70             	mov    %eax,0x70(%esi)
444bf7:	89 4e 6c             	mov    %ecx,0x6c(%esi)
444bfa:	8d 46 58             	lea    0x58(%esi),%eax
444bfd:	5e                   	pop    %esi
444bfe:	c3                   	ret
444bff:	56                   	push   %esi
444c00:	8b f1                	mov    %ecx,%esi
444c02:	68 50 ba 46 00       	push   $0x46ba50
444c07:	b9 a0 c2 4a 00       	mov    $0x4ac2a0,%ecx
444c0c:	e8 bd 97 02 00       	call   0x46e3ce
444c11:	ff 70 64             	push   0x64(%eax)
444c14:	8b 16                	mov    (%esi),%edx
444c16:	ff 70 60             	push   0x60(%eax)
444c19:	8b ce                	mov    %esi,%ecx
444c1b:	ff 70 5c             	push   0x5c(%eax)
444c1e:	ff 92 10 01 00 00    	call   *0x110(%edx)
444c24:	5e                   	pop    %esi
444c25:	c3                   	ret
444c26:	b8 bd 2b 48 00       	mov    $0x482bbd,%eax
444c2b:	e8 4c 30 fd ff       	call   0x417c7c
444c30:	56                   	push   %esi
444c31:	e8 f1 8c 02 00       	call   0x46d927
444c36:	8b f0                	mov    %eax,%esi
444c38:	83 7e 14 00          	cmpl   $0x0,0x14(%esi)
444c3c:	75 52                	jne    0x444c90
444c3e:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
444c42:	74 4c                	je     0x444c90
444c44:	53                   	push   %ebx
444c45:	68 5b 13 45 00       	push   $0x45135b
444c4a:	e8 f4 b3 ff ff       	call   0x440043
444c4f:	6a 60                	push   $0x60
444c51:	8b d8                	mov    %eax,%ebx
444c53:	e8 fd b3 ff ff       	call   0x440055
444c58:	59                   	pop    %ecx
444c59:	8b c8                	mov    %eax,%ecx
444c5b:	89 4d 08             	mov    %ecx,0x8(%ebp)
444c5e:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
444c62:	85 c9                	test   %ecx,%ecx
444c64:	74 1a                	je     0x444c80
444c66:	6a 01                	push   $0x1
444c68:	6a 1c                	push   $0x1c
444c6a:	68 56 cd 46 00       	push   $0x46cd56
444c6f:	68 18 ce 46 00       	push   $0x46ce18
444c74:	68 38 ac 48 00       	push   $0x48ac38
444c79:	e8 90 50 00 00       	call   0x449d0e
444c7e:	eb 02                	jmp    0x444c82
444c80:	33 c0                	xor    %eax,%eax
444c82:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
444c86:	53                   	push   %ebx
444c87:	89 46 14             	mov    %eax,0x14(%esi)
444c8a:	e8 b4 b3 ff ff       	call   0x440043
444c8f:	5b                   	pop    %ebx
444c90:	8b 46 14             	mov    0x14(%esi),%eax
444c93:	8b 4d f4             	mov    -0xc(%ebp),%ecx
444c96:	5e                   	pop    %esi
444c97:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
444c9e:	c9                   	leave
444c9f:	c2 04 00             	ret    $0x4
444ca2:	56                   	push   %esi
444ca3:	57                   	push   %edi
444ca4:	6a 01                	push   $0x1
444ca6:	e8 7b ff ff ff       	call   0x444c26
444cab:	ff 74 24 0c          	push   0xc(%esp)
444caf:	8b f0                	mov    %eax,%esi
444cb1:	8b ce                	mov    %esi,%ecx
444cb3:	e8 df 50 00 00       	call   0x449d97
444cb8:	8b f8                	mov    %eax,%edi
444cba:	56                   	push   %esi
444cbb:	8b cf                	mov    %edi,%ecx
444cbd:	e8 e3 c2 ff ff       	call   0x440fa5
444cc2:	8b c7                	mov    %edi,%eax
444cc4:	5f                   	pop    %edi
444cc5:	5e                   	pop    %esi
444cc6:	c2 04 00             	ret    $0x4
444cc9:	6a 00                	push   $0x0
444ccb:	e8 56 ff ff ff       	call   0x444c26
444cd0:	8b c8                	mov    %eax,%ecx
444cd2:	33 c0                	xor    %eax,%eax
444cd4:	85 c9                	test   %ecx,%ecx
444cd6:	74 08                	je     0x444ce0
444cd8:	83 c1 1c             	add    $0x1c,%ecx