430888:	57                   	push   %edi
430889:	56                   	push   %esi
43088a:	e8 9b 3d 00 00       	call   0x43462a
43088f:	83 cf ff             	or     $0xffffffff,%edi
430892:	59                   	pop    %ecx
430893:	3b c7                	cmp    %edi,%eax
430895:	75 14                	jne    0x4308ab
430897:	8b 45 18             	mov    0x18(%ebp),%eax
43089a:	c6 40 1c 01          	movb   $0x1,0x1c(%eax)
43089e:	c7 40 18 09 00 00 00 	movl   $0x9,0x18(%eax)
4308a5:	8b c7                	mov    %edi,%eax
4308a7:	8b d7                	mov    %edi,%edx
4308a9:	eb 51                	jmp    0x4308fc
4308ab:	ff 75 14             	push   0x14(%ebp)
4308ae:	8d 4d f8             	lea    -0x8(%ebp),%ecx
4308b1:	51                   	push   %ecx
4308b2:	ff 75 10             	push   0x10(%ebp)
4308b5:	ff 75 0c             	push   0xc(%ebp)
4308b8:	50                   	push   %eax
4308b9:	ff 15 b4 f1 43 00    	call   *0x43f1b4
4308bf:	85 c0                	test   %eax,%eax
4308c1:	75 13                	jne    0x4308d6
4308c3:	ff 75 18             	push   0x18(%ebp)
4308c6:	ff 15 60 f0 43 00    	call   *0x43f060
4308cc:	50                   	push   %eax
4308cd:	e8 37 5d ff ff       	call   0x426609
4308d2:	59                   	pop    %ecx
4308d3:	59                   	pop    %ecx
4308d4:	eb cf                	jmp    0x4308a5
4308d6:	8b 45 f8             	mov    -0x8(%ebp),%eax
4308d9:	8b 55 fc             	mov    -0x4(%ebp),%edx
4308dc:	23 c2                	and    %edx,%eax
4308de:	3b c7                	cmp    %edi,%eax
4308e0:	74 c3                	je     0x4308a5
4308e2:	8b 45 f8             	mov    -0x8(%ebp),%eax
4308e5:	8b ce                	mov    %esi,%ecx
4308e7:	83 e6 3f             	and    $0x3f,%esi
4308ea:	c1 f9 06             	sar    $0x6,%ecx
4308ed:	6b f6 38             	imul   $0x38,%esi,%esi
4308f0:	8b 0c 8d 38 5d 45 00 	mov    0x455d38(,%ecx,4),%ecx
4308f7:	80 64 31 28 fd       	andb   $0xfd,0x28(%ecx,%esi,1)
4308fc:	5f                   	pop    %edi
4308fd:	5e                   	pop    %esi
4308fe:	c9                   	leave
4308ff:	c3                   	ret
430900:	8b ff                	mov    %edi,%edi
430902:	55                   	push   %ebp
430903:	8b ec                	mov    %esp,%ebp
430905:	83 ec 28             	sub    $0x28,%esp
430908:	8d 4d d8             	lea    -0x28(%ebp),%ecx
43090b:	56                   	push   %esi
43090c:	57                   	push   %edi
43090d:	6a 00                	push   $0x0
43090f:	e8 4f fe fe ff       	call   0x420763
430914:	8d 45 d8             	lea    -0x28(%ebp),%eax
430917:	50                   	push   %eax
430918:	ff 75 14             	push   0x14(%ebp)
43091b:	ff 75 10             	push   0x10(%ebp)
43091e:	ff 75 0c             	push   0xc(%ebp)
430921:	ff 75 08             	push   0x8(%ebp)
430924:	e8 54 ff ff ff       	call   0x43087d
430929:	83 c4 14             	add    $0x14,%esp
43092c:	8d 4d d8             	lea    -0x28(%ebp),%ecx
43092f:	8b f0                	mov    %eax,%esi
430931:	8b fa                	mov    %edx,%edi
430933:	e8 73 fe fe ff       	call   0x4207ab
430938:	8b d7                	mov    %edi,%edx
43093a:	8b c6                	mov    %esi,%eax
43093c:	5f                   	pop    %edi
43093d:	5e                   	pop    %esi
43093e:	c9                   	leave
43093f:	c3                   	ret
430940:	8b ff                	mov    %edi,%edi
430942:	55                   	push   %ebp
430943:	8b ec                	mov    %esp,%ebp
430945:	ff 75 18             	push   0x18(%ebp)
430948:	ff 75 14             	push   0x14(%ebp)
43094b:	ff 75 10             	push   0x10(%ebp)
43094e:	ff 75 0c             	push   0xc(%ebp)
430951:	ff 75 08             	push   0x8(%ebp)
430954:	e8 24 ff ff ff       	call   0x43087d
430959:	83 c4 14             	add    $0x14,%esp
43095c:	5d                   	pop    %ebp
43095d:	c3                   	ret
43095e:	8b ff                	mov    %edi,%edi
430960:	55                   	push   %ebp
430961:	8b ec                	mov    %esp,%ebp
430963:	51                   	push   %ecx
430964:	51                   	push   %ecx
430965:	a1 14 40 45 00       	mov    0x454014,%eax
43096a:	33 c5                	xor    %ebp,%eax
43096c:	89 45 fc             	mov    %eax,-0x4(%ebp)
43096f:	53                   	push   %ebx
430970:	56                   	push   %esi
430971:	57                   	push   %edi
430972:	8b 7d 18             	mov    0x18(%ebp),%edi
430975:	85 ff                	test   %edi,%edi
430977:	7e 14                	jle    0x43098d
430979:	57                   	push   %edi
43097a:	ff 75 14             	push   0x14(%ebp)
43097d:	e8 0d 89 ff ff       	call   0x42928f
430982:	59                   	pop    %ecx
430983:	3b c7                	cmp    %edi,%eax
430985:	59                   	pop    %ecx
430986:	8d 78 01             	lea    0x1(%eax),%edi
430989:	7c 02                	jl     0x43098d
43098b:	8b f8                	mov    %eax,%edi
43098d:	8b 5d 24             	mov    0x24(%ebp),%ebx
430990:	85 db                	test   %ebx,%ebx
430992:	75 0b                	jne    0x43099f
430994:	8b 45 08             	mov    0x8(%ebp),%eax
430997:	8b 00                	mov    (%eax),%eax
430999:	8b 58 08             	mov    0x8(%eax),%ebx
43099c:	89 5d 24             	mov    %ebx,0x24(%ebp)
43099f:	33 c0                	xor    %eax,%eax
4309a1:	39 45 28             	cmp    %eax,0x28(%ebp)
4309a4:	6a 00                	push   $0x0
4309a6:	6a 00                	push   $0x0
4309a8:	0f 95 c0             	setne  %al
4309ab:	57                   	push   %edi
4309ac:	ff 75 14             	push   0x14(%ebp)
4309af:	8d 04 c5 01 00 00 00 	lea    0x1(,%eax,8),%eax
4309b6:	50                   	push   %eax
4309b7:	53                   	push   %ebx
4309b8:	e8 03 26 00 00       	call   0x432fc0
4309bd:	83 c4 18             	add    $0x18,%esp
4309c0:	89 45 f8             	mov    %eax,-0x8(%ebp)
4309c3:	85 c0                	test   %eax,%eax
4309c5:	0f 84 70 01 00 00    	je     0x430b3b
4309cb:	03 c0                	add    %eax,%eax
4309cd:	8d 48 08             	lea    0x8(%eax),%ecx
4309d0:	3b c1                	cmp    %ecx,%eax
4309d2:	1b c0                	sbb    %eax,%eax
4309d4:	23 c1                	and    %ecx,%eax
4309d6:	0f 84 52 01 00 00    	je     0x430b2e
4309dc:	3d 00 04 00 00       	cmp    $0x400,%eax
4309e1:	77 17                	ja     0x4309fa
4309e3:	e8 48 bb fe ff       	call   0x41c530
4309e8:	8b f4                	mov    %esp,%esi
4309ea:	85 f6                	test   %esi,%esi
4309ec:	0f 84 3e 01 00 00    	je     0x430b30
4309f2:	c7 06 cc cc 00 00    	movl   $0xcccc,(%esi)
4309f8:	eb 17                	jmp    0x430a11
4309fa:	50                   	push   %eax
4309fb:	e8 b1 ba ff ff       	call   0x42c4b1
430a00:	8b f0                	mov    %eax,%esi
430a02:	59                   	pop    %ecx
430a03:	85 f6                	test   %esi,%esi
430a05:	0f 84 25 01 00 00    	je     0x430b30
430a0b:	c7 06 dd dd 00 00    	movl   $0xdddd,(%esi)
430a11:	83 c6 08             	add    $0x8,%esi
430a14:	85 f6                	test   %esi,%esi
430a16:	0f 84 14 01 00 00    	je     0x430b30
430a1c:	ff 75 f8             	push   -0x8(%ebp)
430a1f:	56                   	push   %esi
430a20:	57                   	push   %edi
430a21:	ff 75 14             	push   0x14(%ebp)
430a24:	6a 01                	push   $0x1
430a26:	53                   	push   %ebx
430a27:	e8 94 25 00 00       	call   0x432fc0
430a2c:	83 c4 18             	add    $0x18,%esp
430a2f:	85 c0                	test   %eax,%eax
430a31:	0f 84 f9 00 00 00    	je     0x430b30
430a37:	8b 7d f8             	mov    -0x8(%ebp),%edi
430a3a:	33 c0                	xor    %eax,%eax
430a3c:	50                   	push   %eax
430a3d:	50                   	push   %eax
430a3e:	50                   	push   %eax
430a3f:	50                   	push   %eax
430a40:	50                   	push   %eax
430a41:	57                   	push   %edi
430a42:	56                   	push   %esi
430a43:	ff 75 10             	push   0x10(%ebp)
430a46:	ff 75 0c             	push   0xc(%ebp)
430a49:	e8 e3 e7 ff ff       	call   0x42f231
430a4e:	8b d8                	mov    %eax,%ebx
430a50:	85 db                	test   %ebx,%ebx
430a52:	0f 84 d8 00 00 00    	je     0x430b30
430a58:	ba 00 04 00 00       	mov    $0x400,%edx
430a5d:	85 55 10             	test   %edx,0x10(%ebp)
430a60:	74 38                	je     0x430a9a
430a62:	8b 45 20             	mov    0x20(%ebp),%eax
430a65:	85 c0                	test   %eax,%eax
430a67:	0f 84 c5 00 00 00    	je     0x430b32
430a6d:	3b d8                	cmp    %eax,%ebx
430a6f:	0f 8f bb 00 00 00    	jg     0x430b30
430a75:	33 c9                	xor    %ecx,%ecx
430a77:	51                   	push   %ecx
430a78:	51                   	push   %ecx
430a79:	51                   	push   %ecx
430a7a:	50                   	push   %eax
430a7b:	ff 75 1c             	push   0x1c(%ebp)
430a7e:	57                   	push   %edi
430a7f:	56                   	push   %esi
430a80:	ff 75 10             	push   0x10(%ebp)
430a83:	ff 75 0c             	push   0xc(%ebp)
430a86:	e8 a6 e7 ff ff       	call   0x42f231
430a8b:	8b d8                	mov    %eax,%ebx
430a8d:	85 db                	test   %ebx,%ebx
430a8f:	0f 85 9d 00 00 00    	jne    0x430b32
430a95:	e9 96 00 00 00       	jmp    0x430b30
430a9a:	8d 04 1b             	lea    (%ebx,%ebx,1),%eax
430a9d:	8d 48 08             	lea    0x8(%eax),%ecx
430aa0:	3b c1                	cmp    %ecx,%eax
430aa2:	1b c0                	sbb    %eax,%eax
430aa4:	23 c1                	and    %ecx,%eax
430aa6:	74 7b                	je     0x430b23
430aa8:	3b c2                	cmp    %edx,%eax
430aaa:	77 13                	ja     0x430abf
430aac:	e8 7f ba fe ff       	call   0x41c530
430ab1:	8b fc                	mov    %esp,%edi
430ab3:	85 ff                	test   %edi,%edi
430ab5:	74 6e                	je     0x430b25
430ab7:	c7 07 cc cc 00 00    	movl   $0xcccc,(%edi)
430abd:	eb 13                	jmp    0x430ad2
430abf:	50                   	push   %eax
430ac0:	e8 ec b9 ff ff       	call   0x42c4b1
430ac5:	8b f8                	mov    %eax,%edi
430ac7:	59                   	pop    %ecx
430ac8:	85 ff                	test   %edi,%edi
430aca:	74 59                	je     0x430b25
430acc:	c7 07 dd dd 00 00    	movl   $0xdddd,(%edi)
430ad2:	83 c7 08             	add    $0x8,%edi
430ad5:	85 ff                	test   %edi,%edi
430ad7:	74 4c                	je     0x430b25
430ad9:	33 c0                	xor    %eax,%eax
430adb:	50                   	push   %eax
430adc:	50                   	push   %eax
430add:	50                   	push   %eax
430ade:	53                   	push   %ebx
430adf:	57                   	push   %edi
430ae0:	ff 75 f8             	push   -0x8(%ebp)
430ae3:	56                   	push   %esi
430ae4:	ff 75 10             	push   0x10(%ebp)
430ae7:	ff 75 0c             	push   0xc(%ebp)
430aea:	e8 42 e7 ff ff       	call   0x42f231
430aef:	85 c0                	test   %eax,%eax
430af1:	74 32                	je     0x430b25
430af3:	33 c0                	xor    %eax,%eax
430af5:	50                   	push   %eax
430af6:	50                   	push   %eax
430af7:	39 45 20             	cmp    %eax,0x20(%ebp)
430afa:	75 1f                	jne    0x430b1b
430afc:	50                   	push   %eax
430afd:	50                   	push   %eax
430afe:	53                   	push   %ebx
430aff:	57                   	push   %edi
430b00:	50                   	push   %eax
430b01:	ff 75 24             	push   0x24(%ebp)
430b04:	e8 71 25 00 00       	call   0x43307a
430b09:	8b d8                	mov    %eax,%ebx
430b0b:	83 c4 20             	add    $0x20,%esp
430b0e:	85 db                	test   %ebx,%ebx
430b10:	74 13                	je     0x430b25
430b12:	57                   	push   %edi
430b13:	e8 9a ad fe ff       	call   0x41b8b2
430b18:	59                   	pop    %ecx
430b19:	eb 17                	jmp    0x430b32
430b1b:	ff 75 20             	push   0x20(%ebp)
430b1e:	ff 75 1c             	push   0x1c(%ebp)
430b21:	eb db                	jmp    0x430afe
430b23:	33 ff                	xor    %edi,%edi
430b25:	57                   	push   %edi
430b26:	e8 87 ad fe ff       	call   0x41b8b2
430b2b:	59                   	pop    %ecx
430b2c:	eb 02                	jmp    0x430b30
430b2e:	33 f6                	xor    %esi,%esi
430b30:	33 db                	xor    %ebx,%ebx
430b32:	56                   	push   %esi
430b33:	e8 7a ad fe ff       	call   0x41b8b2
430b38:	59                   	pop    %ecx
430b39:	8b c3                	mov    %ebx,%eax
430b3b:	8d 65 ec             	lea    -0x14(%ebp),%esp
430b3e:	5f                   	pop    %edi
430b3f:	5e                   	pop    %esi
430b40:	5b                   	pop    %ebx
430b41:	8b 4d fc             	mov    -0x4(%ebp),%ecx
430b44:	33 cd                	xor    %ebp,%ecx
430b46:	e8 85 ad fe ff       	call   0x41b8d0
430b4b:	c9                   	leave
430b4c:	c3                   	ret
430b4d:	8b ff                	mov    %edi,%edi
430b4f:	55                   	push   %ebp
430b50:	8b ec                	mov    %esp,%ebp
430b52:	83 ec 10             	sub    $0x10,%esp
430b55:	ff 75 08             	push   0x8(%ebp)
430b58:	8d 4d f0             	lea    -0x10(%ebp),%ecx
430b5b:	e8 91 42 ff ff       	call   0x424df1
430b60:	ff 75 28             	push   0x28(%ebp)
430b63:	8d 45 f4             	lea    -0xc(%ebp),%eax
430b66:	ff 75 24             	push   0x24(%ebp)
430b69:	ff 75 20             	push   0x20(%ebp)
430b6c:	ff 75 1c             	push   0x1c(%ebp)
430b6f:	ff 75 18             	push   0x18(%ebp)
430b72:	ff 75 14             	push   0x14(%ebp)
430b75:	ff 75 10             	push   0x10(%ebp)
430b78:	ff 75 0c             	push   0xc(%ebp)
430b7b:	50                   	push   %eax
430b7c:	e8 dd fd ff ff       	call   0x43095e
430b81:	83 c4 24             	add    $0x24,%esp
430b84:	80 7d fc 00          	cmpb   $0x0,-0x4(%ebp)
430b88:	74 0a                	je     0x430b94
430b8a:	8b 4d f0             	mov    -0x10(%ebp),%ecx
430b8d:	83 a1 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%ecx)
430b94:	c9                   	leave
430b95:	c3                   	ret
430b96:	8b ff                	mov    %edi,%edi
430b98:	55                   	push   %ebp
430b99:	8b ec                	mov    %esp,%ebp
430b9b:	51                   	push   %ecx
430b9c:	51                   	push   %ecx
430b9d:	66 8b 45 08          	mov    0x8(%ebp),%ax
430ba1:	b9 ff ff 00 00       	mov    $0xffff,%ecx
430ba6:	56                   	push   %esi
430ba7:	66 8b 75 0c          	mov    0xc(%ebp),%si
430bab:	0f b7 d6             	movzwl %si,%edx
430bae:	66 3b c1             	cmp    %cx,%ax
430bb1:	74 47                	je     0x430bfa
430bb3:	b9 00 01 00 00       	mov    $0x100,%ecx
430bb8:	66 3b c1             	cmp    %cx,%ax
430bbb:	73 10                	jae    0x430bcd
430bbd:	0f b7 c8             	movzwl %ax,%ecx
430bc0:	a1 94 41 45 00       	mov    0x454194,%eax
430bc5:	0f b7 04 48          	movzwl (%eax,%ecx,2),%eax
430bc9:	23 c2                	and    %edx,%eax
430bcb:	eb 2f                	jmp    0x430bfc
430bcd:	66 89 45 f8          	mov    %ax,-0x8(%ebp)
430bd1:	33 c0                	xor    %eax,%eax
430bd3:	66 89 45 fc          	mov    %ax,-0x4(%ebp)
430bd7:	8d 45 fc             	lea    -0x4(%ebp),%eax
430bda:	50                   	push   %eax
430bdb:	6a 01                	push   $0x1
430bdd:	8d 45 f8             	lea    -0x8(%ebp),%eax
430be0:	50                   	push   %eax
430be1:	6a 01                	push   $0x1
430be3:	e8 32 96 00 00       	call   0x43a21a
430be8:	83 c4 10             	add    $0x10,%esp
430beb:	85 c0                	test   %eax,%eax
430bed:	74 0b                	je     0x430bfa
430bef:	0f b7 45 fc          	movzwl -0x4(%ebp),%eax
430bf3:	0f b7 ce             	movzwl %si,%ecx
430bf6:	23 c1                	and    %ecx,%eax
430bf8:	eb 02                	jmp    0x430bfc
430bfa:	33 c0                	xor    %eax,%eax
430bfc:	5e                   	pop    %esi
430bfd:	c9                   	leave
430bfe:	c3                   	ret
430bff:	e8 1a 99 00 00       	call   0x43a51e
430c04:	50                   	push   %eax
430c05:	e8 f2 98 00 00       	call   0x43a4fc