438a01:	56                   	push   %esi
438a02:	68 54 22 46 00       	push   $0x462254
438a07:	68 4c 22 46 00       	push   $0x46224c
438a0c:	68 54 22 46 00       	push   $0x462254
438a11:	6a 18                	push   $0x18
438a13:	e8 7d fc ff ff       	call   0x438695
438a18:	8b f0                	mov    %eax,%esi
438a1a:	83 c4 10             	add    $0x10,%esp
438a1d:	85 f6                	test   %esi,%esi
438a1f:	74 12                	je     0x438a33
438a21:	ff 75 0c             	push   0xc(%ebp)
438a24:	8b ce                	mov    %esi,%ecx
438a26:	ff 75 08             	push   0x8(%ebp)
438a29:	ff 15 d0 b3 44 00    	call   *0x44b3d0
438a2f:	ff d6                	call   *%esi
438a31:	eb 09                	jmp    0x438a3c
438a33:	ff 75 08             	push   0x8(%ebp)
438a36:	e8 50 3a 00 00       	call   0x43c48b
438a3b:	59                   	pop    %ecx
438a3c:	8b 4d fc             	mov    -0x4(%ebp),%ecx
438a3f:	33 cd                	xor    %ebp,%ecx
438a41:	5e                   	pop    %esi
438a42:	e8 ef 53 ff ff       	call   0x42de36
438a47:	8b e5                	mov    %ebp,%esp
438a49:	5d                   	pop    %ebp
438a4a:	c2 08 00             	ret    $0x8
438a4d:	a1 08 a0 46 00       	mov    0x46a008,%eax
438a52:	57                   	push   %edi
438a53:	6a 20                	push   $0x20
438a55:	83 e0 1f             	and    $0x1f,%eax
438a58:	bf 28 b5 46 00       	mov    $0x46b528,%edi
438a5d:	59                   	pop    %ecx
438a5e:	2b c8                	sub    %eax,%ecx
438a60:	33 c0                	xor    %eax,%eax
438a62:	d3 c8                	ror    %cl,%eax
438a64:	33 05 08 a0 46 00    	xor    0x46a008,%eax
438a6a:	6a 20                	push   $0x20
438a6c:	59                   	pop    %ecx
438a6d:	f3 ab                	rep stos %eax,%es:(%edi)
438a6f:	b0 01                	mov    $0x1,%al
438a71:	5f                   	pop    %edi
438a72:	c3                   	ret
438a73:	8b ff                	mov    %edi,%edi
438a75:	55                   	push   %ebp
438a76:	8b ec                	mov    %esp,%ebp
438a78:	51                   	push   %ecx
438a79:	51                   	push   %ecx
438a7a:	a1 08 a0 46 00       	mov    0x46a008,%eax
438a7f:	33 c5                	xor    %ebp,%eax
438a81:	89 45 fc             	mov    %eax,-0x4(%ebp)
438a84:	8b 0d a8 b5 46 00    	mov    0x46b5a8,%ecx
438a8a:	85 c9                	test   %ecx,%ecx
438a8c:	74 0a                	je     0x438a98
438a8e:	33 c0                	xor    %eax,%eax
438a90:	83 f9 01             	cmp    $0x1,%ecx
438a93:	0f 94 c0             	sete   %al
438a96:	eb 54                	jmp    0x438aec
438a98:	56                   	push   %esi
438a99:	68 18 22 46 00       	push   $0x462218
438a9e:	68 10 22 46 00       	push   $0x462210
438aa3:	68 18 22 46 00       	push   $0x462218
438aa8:	6a 08                	push   $0x8
438aaa:	e8 e6 fb ff ff       	call   0x438695
438aaf:	8b f0                	mov    %eax,%esi
438ab1:	83 c4 10             	add    $0x10,%esp
438ab4:	85 f6                	test   %esi,%esi
438ab6:	74 27                	je     0x438adf
438ab8:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
438abc:	8d 45 f8             	lea    -0x8(%ebp),%eax
438abf:	6a 00                	push   $0x0
438ac1:	50                   	push   %eax
438ac2:	8b ce                	mov    %esi,%ecx
438ac4:	ff 15 d0 b3 44 00    	call   *0x44b3d0
438aca:	ff d6                	call   *%esi
438acc:	83 f8 7a             	cmp    $0x7a,%eax
438acf:	75 0e                	jne    0x438adf
438ad1:	33 c9                	xor    %ecx,%ecx
438ad3:	ba a8 b5 46 00       	mov    $0x46b5a8,%edx
438ad8:	41                   	inc    %ecx
438ad9:	87 0a                	xchg   %ecx,(%edx)
438adb:	b0 01                	mov    $0x1,%al
438add:	eb 0c                	jmp    0x438aeb
438adf:	6a 02                	push   $0x2
438ae1:	58                   	pop    %eax
438ae2:	b9 a8 b5 46 00       	mov    $0x46b5a8,%ecx
438ae7:	87 01                	xchg   %eax,(%ecx)
438ae9:	32 c0                	xor    %al,%al
438aeb:	5e                   	pop    %esi
438aec:	8b 4d fc             	mov    -0x4(%ebp),%ecx
438aef:	33 cd                	xor    %ebp,%ecx
438af1:	e8 40 53 ff ff       	call   0x42de36
438af6:	8b e5                	mov    %ebp,%esp
438af8:	5d                   	pop    %ebp
438af9:	c3                   	ret
438afa:	8b ff                	mov    %edi,%edi
438afc:	55                   	push   %ebp
438afd:	8b ec                	mov    %esp,%ebp
438aff:	80 7d 08 00          	cmpb   $0x0,0x8(%ebp)
438b03:	75 27                	jne    0x438b2c
438b05:	56                   	push   %esi
438b06:	be d8 b4 46 00       	mov    $0x46b4d8,%esi
438b0b:	83 3e 00             	cmpl   $0x0,(%esi)
438b0e:	74 10                	je     0x438b20
438b10:	83 3e ff             	cmpl   $0xffffffff,(%esi)
438b13:	74 08                	je     0x438b1d
438b15:	ff 36                	push   (%esi)
438b17:	ff 15 b0 b1 44 00    	call   *0x44b1b0
438b1d:	83 26 00             	andl   $0x0,(%esi)
438b20:	83 c6 04             	add    $0x4,%esi
438b23:	81 fe 28 b5 46 00    	cmp    $0x46b528,%esi
438b29:	75 e0                	jne    0x438b0b
438b2b:	5e                   	pop    %esi
438b2c:	b0 01                	mov    $0x1,%al
438b2e:	5d                   	pop    %ebp
438b2f:	c3                   	ret
438b30:	8b ff                	mov    %edi,%edi
438b32:	55                   	push   %ebp
438b33:	8b ec                	mov    %esp,%ebp
438b35:	51                   	push   %ecx
438b36:	51                   	push   %ecx
438b37:	53                   	push   %ebx
438b38:	57                   	push   %edi
438b39:	6a 30                	push   $0x30
438b3b:	6a 40                	push   $0x40
438b3d:	e8 fd c6 ff ff       	call   0x43523f
438b42:	8b f8                	mov    %eax,%edi
438b44:	33 db                	xor    %ebx,%ebx
438b46:	89 7d f8             	mov    %edi,-0x8(%ebp)
438b49:	59                   	pop    %ecx
438b4a:	59                   	pop    %ecx
438b4b:	85 ff                	test   %edi,%edi
438b4d:	75 04                	jne    0x438b53
438b4f:	8b fb                	mov    %ebx,%edi
438b51:	eb 48                	jmp    0x438b9b
438b53:	8d 87 00 0c 00 00    	lea    0xc00(%edi),%eax
438b59:	3b f8                	cmp    %eax,%edi
438b5b:	74 3e                	je     0x438b9b
438b5d:	56                   	push   %esi
438b5e:	8d 77 20             	lea    0x20(%edi),%esi
438b61:	8b f8                	mov    %eax,%edi
438b63:	53                   	push   %ebx
438b64:	68 a0 0f 00 00       	push   $0xfa0
438b69:	8d 46 e0             	lea    -0x20(%esi),%eax
438b6c:	50                   	push   %eax
438b6d:	e8 95 fd ff ff       	call   0x438907
438b72:	83 4e f8 ff          	orl    $0xffffffff,-0x8(%esi)
438b76:	89 1e                	mov    %ebx,(%esi)
438b78:	8d 76 30             	lea    0x30(%esi),%esi
438b7b:	89 5e d4             	mov    %ebx,-0x2c(%esi)
438b7e:	8d 46 e0             	lea    -0x20(%esi),%eax
438b81:	c7 46 d8 00 00 0a 0a 	movl   $0xa0a0000,-0x28(%esi)
438b88:	c6 46 dc 0a          	movb   $0xa,-0x24(%esi)
438b8c:	80 66 dd f8          	andb   $0xf8,-0x23(%esi)
438b90:	88 5e de             	mov    %bl,-0x22(%esi)
438b93:	3b c7                	cmp    %edi,%eax
438b95:	75 cc                	jne    0x438b63
438b97:	8b 7d f8             	mov    -0x8(%ebp),%edi
438b9a:	5e                   	pop    %esi
438b9b:	53                   	push   %ebx
438b9c:	e8 79 c5 ff ff       	call   0x43511a
438ba1:	59                   	pop    %ecx
438ba2:	8b c7                	mov    %edi,%eax
438ba4:	5f                   	pop    %edi
438ba5:	5b                   	pop    %ebx
438ba6:	8b e5                	mov    %ebp,%esp
438ba8:	5d                   	pop    %ebp
438ba9:	c3                   	ret
438baa:	8b ff                	mov    %edi,%edi
438bac:	55                   	push   %ebp
438bad:	8b ec                	mov    %esp,%ebp
438baf:	56                   	push   %esi
438bb0:	8b 75 08             	mov    0x8(%ebp),%esi
438bb3:	85 f6                	test   %esi,%esi
438bb5:	74 25                	je     0x438bdc
438bb7:	53                   	push   %ebx
438bb8:	8d 9e 00 0c 00 00    	lea    0xc00(%esi),%ebx
438bbe:	57                   	push   %edi
438bbf:	8b fe                	mov    %esi,%edi
438bc1:	3b f3                	cmp    %ebx,%esi
438bc3:	74 0e                	je     0x438bd3
438bc5:	57                   	push   %edi
438bc6:	ff 15 8c b1 44 00    	call   *0x44b18c
438bcc:	83 c7 30             	add    $0x30,%edi
438bcf:	3b fb                	cmp    %ebx,%edi
438bd1:	75 f2                	jne    0x438bc5
438bd3:	56                   	push   %esi
438bd4:	e8 41 c5 ff ff       	call   0x43511a
438bd9:	59                   	pop    %ecx
438bda:	5f                   	pop    %edi
438bdb:	5b                   	pop    %ebx
438bdc:	5e                   	pop    %esi
438bdd:	5d                   	pop    %ebp
438bde:	c3                   	ret
438bdf:	6a 14                	push   $0x14
438be1:	68 a0 7e 46 00       	push   $0x467ea0
438be6:	e8 45 5c ff ff       	call   0x42e830
438beb:	81 7d 08 00 20 00 00 	cmpl   $0x2000,0x8(%ebp)
438bf2:	1b c0                	sbb    %eax,%eax
438bf4:	f7 d8                	neg    %eax
438bf6:	75 17                	jne    0x438c0f
438bf8:	e8 39 b2 ff ff       	call   0x433e36
438bfd:	6a 09                	push   $0x9
438bff:	5e                   	pop    %esi
438c00:	89 30                	mov    %esi,(%eax)
438c02:	e8 73 b1 ff ff       	call   0x433d7a
438c07:	8b c6                	mov    %esi,%eax
438c09:	e8 68 5c ff ff       	call   0x42e876
438c0e:	c3                   	ret
438c0f:	33 f6                	xor    %esi,%esi
438c11:	89 75 e4             	mov    %esi,-0x1c(%ebp)
438c14:	6a 07                	push   $0x7
438c16:	e8 1b fa ff ff       	call   0x438636
438c1b:	59                   	pop    %ecx
438c1c:	89 75 fc             	mov    %esi,-0x4(%ebp)
438c1f:	8b fe                	mov    %esi,%edi
438c21:	a1 58 b3 46 00       	mov    0x46b358,%eax
438c26:	89 7d e0             	mov    %edi,-0x20(%ebp)
438c29:	39 45 08             	cmp    %eax,0x8(%ebp)
438c2c:	7c 1f                	jl     0x438c4d
438c2e:	39 34 bd 58 b1 46 00 	cmp    %esi,0x46b158(,%edi,4)
438c35:	75 31                	jne    0x438c68
438c37:	e8 f4 fe ff ff       	call   0x438b30
438c3c:	89 04 bd 58 b1 46 00 	mov    %eax,0x46b158(,%edi,4)
438c43:	85 c0                	test   %eax,%eax
438c45:	75 14                	jne    0x438c5b
438c47:	6a 0c                	push   $0xc
438c49:	5e                   	pop    %esi
438c4a:	89 75 e4             	mov    %esi,-0x1c(%ebp)
438c4d:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
438c54:	e8 15 00 00 00       	call   0x438c6e
438c59:	eb ac                	jmp    0x438c07
438c5b:	a1 58 b3 46 00       	mov    0x46b358,%eax
438c60:	83 c0 40             	add    $0x40,%eax
438c63:	a3 58 b3 46 00       	mov    %eax,0x46b358
438c68:	47                   	inc    %edi
438c69:	eb bb                	jmp    0x438c26
438c6b:	8b 75 e4             	mov    -0x1c(%ebp),%esi
438c6e:	6a 07                	push   $0x7
438c70:	e8 09 fa ff ff       	call   0x43867e
438c75:	59                   	pop    %ecx
438c76:	c3                   	ret
438c77:	8b ff                	mov    %edi,%edi
438c79:	55                   	push   %ebp
438c7a:	8b ec                	mov    %esp,%ebp
438c7c:	8b 45 08             	mov    0x8(%ebp),%eax
438c7f:	8b c8                	mov    %eax,%ecx
438c81:	83 e0 3f             	and    $0x3f,%eax
438c84:	c1 f9 06             	sar    $0x6,%ecx
438c87:	6b c0 30             	imul   $0x30,%eax,%eax
438c8a:	03 04 8d 58 b1 46 00 	add    0x46b158(,%ecx,4),%eax
438c91:	50                   	push   %eax
438c92:	ff 15 b4 b1 44 00    	call   *0x44b1b4
438c98:	5d                   	pop    %ebp
438c99:	c3                   	ret
438c9a:	8b ff                	mov    %edi,%edi
438c9c:	55                   	push   %ebp
438c9d:	8b ec                	mov    %esp,%ebp
438c9f:	8b 45 08             	mov    0x8(%ebp),%eax
438ca2:	8b c8                	mov    %eax,%ecx
438ca4:	83 e0 3f             	and    $0x3f,%eax
438ca7:	c1 f9 06             	sar    $0x6,%ecx
438caa:	6b c0 30             	imul   $0x30,%eax,%eax
438cad:	03 04 8d 58 b1 46 00 	add    0x46b158(,%ecx,4),%eax
438cb4:	50                   	push   %eax
438cb5:	ff 15 b8 b1 44 00    	call   *0x44b1b8
438cbb:	5d                   	pop    %ebp
438cbc:	c3                   	ret
438cbd:	8b ff                	mov    %edi,%edi
438cbf:	55                   	push   %ebp
438cc0:	8b ec                	mov    %esp,%ebp
438cc2:	53                   	push   %ebx
438cc3:	56                   	push   %esi
438cc4:	8b 75 08             	mov    0x8(%ebp),%esi
438cc7:	57                   	push   %edi
438cc8:	85 f6                	test   %esi,%esi
438cca:	78 67                	js     0x438d33
438ccc:	3b 35 58 b3 46 00    	cmp    0x46b358,%esi
438cd2:	73 5f                	jae    0x438d33
438cd4:	8b c6                	mov    %esi,%eax
438cd6:	8b fe                	mov    %esi,%edi
438cd8:	83 e0 3f             	and    $0x3f,%eax
438cdb:	c1 ff 06             	sar    $0x6,%edi
438cde:	6b d8 30             	imul   $0x30,%eax,%ebx
438ce1:	8b 04 bd 58 b1 46 00 	mov    0x46b158(,%edi,4),%eax
438ce8:	f6 44 03 28 01       	testb  $0x1,0x28(%ebx,%eax,1)
438ced:	74 44                	je     0x438d33
438cef:	83 7c 03 18 ff       	cmpl   $0xffffffff,0x18(%ebx,%eax,1)
438cf4:	74 3d                	je     0x438d33
438cf6:	e8 11 b3 ff ff       	call   0x43400c
438cfb:	83 f8 01             	cmp    $0x1,%eax
438cfe:	75 23                	jne    0x438d23
438d00:	33 c0                	xor    %eax,%eax
438d02:	2b f0                	sub    %eax,%esi
438d04:	74 14                	je     0x438d1a
438d06:	83 ee 01             	sub    $0x1,%esi
438d09:	74 0a                	je     0x438d15
438d0b:	83 ee 01             	sub    $0x1,%esi
438d0e:	75 13                	jne    0x438d23
438d10:	50                   	push   %eax
438d11:	6a f4                	push   $0xfffffff4
438d13:	eb 08                	jmp    0x438d1d
438d15:	50                   	push   %eax
438d16:	6a f5                	push   $0xfffffff5
438d18:	eb 03                	jmp    0x438d1d
438d1a:	50                   	push   %eax
438d1b:	6a f6                	push   $0xfffffff6
438d1d:	ff 15 7c b2 44 00    	call   *0x44b27c
438d23:	8b 04 bd 58 b1 46 00 	mov    0x46b158(,%edi,4),%eax
438d2a:	83 4c 03 18 ff       	orl    $0xffffffff,0x18(%ebx,%eax,1)
438d2f:	33 c0                	xor    %eax,%eax
438d31:	eb 16                	jmp    0x438d49
438d33:	e8 fe b0 ff ff       	call   0x433e36
438d38:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
438d3e:	e8 e0 b0 ff ff       	call   0x433e23
438d43:	83 20 00             	andl   $0x0,(%eax)
438d46:	83 c8 ff             	or     $0xffffffff,%eax
438d49:	5f                   	pop    %edi
438d4a:	5e                   	pop    %esi
438d4b:	5b                   	pop    %ebx
438d4c:	5d                   	pop    %ebp
438d4d:	c3                   	ret
438d4e:	8b ff                	mov    %edi,%edi
438d50:	55                   	push   %ebp
438d51:	8b ec                	mov    %esp,%ebp
438d53:	8b 4d 08             	mov    0x8(%ebp),%ecx
438d56:	83 f9 fe             	cmp    $0xfffffffe,%ecx
438d59:	75 15                	jne    0x438d70
438d5b:	e8 c3 b0 ff ff       	call   0x433e23
438d60:	83 20 00             	andl   $0x0,(%eax)
438d63:	e8 ce b0 ff ff       	call   0x433e36
438d68:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
438d6e:	eb 43                	jmp    0x438db3
438d70:	85 c9                	test   %ecx,%ecx
438d72:	78 27                	js     0x438d9b
438d74:	3b 0d 58 b3 46 00    	cmp    0x46b358,%ecx
438d7a:	73 1f                	jae    0x438d9b
438d7c:	8b c1                	mov    %ecx,%eax
438d7e:	83 e1 3f             	and    $0x3f,%ecx
438d81:	c1 f8 06             	sar    $0x6,%eax
438d84:	6b c9 30             	imul   $0x30,%ecx,%ecx
438d87:	8b 04 85 58 b1 46 00 	mov    0x46b158(,%eax,4),%eax
438d8e:	f6 44 08 28 01       	testb  $0x1,0x28(%eax,%ecx,1)
438d93:	74 06                	je     0x438d9b
438d95:	8b 44 08 18          	mov    0x18(%eax,%ecx,1),%eax
438d99:	5d                   	pop    %ebp
438d9a:	c3                   	ret
438d9b:	e8 83 b0 ff ff       	call   0x433e23
438da0:	83 20 00             	andl   $0x0,(%eax)
438da3:	e8 8e b0 ff ff       	call   0x433e36
438da8:	c7 00 09 00 00 00    	movl   $0x9,(%eax)