4057c1:	8b 45 f8             	mov    -0x8(%ebp),%eax
4057c4:	50                   	push   %eax
4057c5:	8b 0d a8 73 41 00    	mov    0x4173a8,%ecx
4057cb:	83 c1 7c             	add    $0x7c,%ecx
4057ce:	51                   	push   %ecx
4057cf:	e8 cc fd ff ff       	call   0x4055a0
4057d4:	83 c4 08             	add    $0x8,%esp
4057d7:	85 c0                	test   %eax,%eax
4057d9:	74 07                	je     0x4057e2
4057db:	b8 01 00 00 00       	mov    $0x1,%eax
4057e0:	eb 02                	jmp    0x4057e4
4057e2:	33 c0                	xor    %eax,%eax
4057e4:	8b e5                	mov    %ebp,%esp
4057e6:	5d                   	pop    %ebp
4057e7:	c3                   	ret
4057e8:	cc                   	int3
4057e9:	cc                   	int3
4057ea:	cc                   	int3
4057eb:	cc                   	int3
4057ec:	cc                   	int3
4057ed:	cc                   	int3
4057ee:	cc                   	int3
4057ef:	cc                   	int3
4057f0:	55                   	push   %ebp
4057f1:	8b ec                	mov    %esp,%ebp
4057f3:	83 3d ac 73 41 00 00 	cmpl   $0x0,0x4173ac
4057fa:	74 14                	je     0x405810
4057fc:	a1 a8 73 41 00       	mov    0x4173a8,%eax
405801:	83 b8 88 00 00 00 00 	cmpl   $0x0,0x88(%eax)
405808:	74 06                	je     0x405810
40580a:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
40580e:	75 07                	jne    0x405817
405810:	33 c0                	xor    %eax,%eax
405812:	e9 b1 00 00 00       	jmp    0x4058c8
405817:	8b 4d 08             	mov    0x8(%ebp),%ecx
40581a:	51                   	push   %ecx
40581b:	e8 40 12 00 00       	call   0x406a60
405820:	83 c4 04             	add    $0x4,%esp
405823:	83 f8 02             	cmp    $0x2,%eax
405826:	75 7a                	jne    0x4058a2
405828:	8b 15 a8 73 41 00    	mov    0x4173a8,%edx
40582e:	83 ba 8c 00 00 00 00 	cmpl   $0x0,0x8c(%edx)
405835:	74 6b                	je     0x4058a2
405837:	b8 02 00 00 00       	mov    $0x2,%eax
40583c:	c1 e0 00             	shl    $0x0,%eax
40583f:	8b 4d 08             	mov    0x8(%ebp),%ecx
405842:	0f b7 14 01          	movzwl (%ecx,%eax,1),%edx
405846:	83 fa 24             	cmp    $0x24,%edx
405849:	75 57                	jne    0x4058a2
40584b:	b8 02 00 00 00       	mov    $0x2,%eax
405850:	6b c8 00             	imul   $0x0,%eax,%ecx
405853:	8b 55 08             	mov    0x8(%ebp),%edx
405856:	0f b7 04 0a          	movzwl (%edx,%ecx,1),%eax
40585a:	83 f8 61             	cmp    $0x61,%eax
40585d:	7c 14                	jl     0x405873
40585f:	b9 02 00 00 00       	mov    $0x2,%ecx
405864:	6b d1 00             	imul   $0x0,%ecx,%edx
405867:	8b 45 08             	mov    0x8(%ebp),%eax
40586a:	0f b7 0c 10          	movzwl (%eax,%edx,1),%ecx
40586e:	83 f9 7a             	cmp    $0x7a,%ecx
405871:	7e 28                	jle    0x40589b
405873:	ba 02 00 00 00       	mov    $0x2,%edx
405878:	6b c2 00             	imul   $0x0,%edx,%eax
40587b:	8b 4d 08             	mov    0x8(%ebp),%ecx
40587e:	0f b7 14 01          	movzwl (%ecx,%eax,1),%edx
405882:	83 fa 41             	cmp    $0x41,%edx
405885:	7c 1b                	jl     0x4058a2
405887:	b8 02 00 00 00       	mov    $0x2,%eax
40588c:	6b c8 00             	imul   $0x0,%eax,%ecx
40588f:	8b 55 08             	mov    0x8(%ebp),%edx
405892:	0f b7 04 0a          	movzwl (%edx,%ecx,1),%eax
405896:	83 f8 5a             	cmp    $0x5a,%eax
405899:	7f 07                	jg     0x4058a2
40589b:	b8 01 00 00 00       	mov    $0x1,%eax
4058a0:	eb 26                	jmp    0x4058c8
4058a2:	8b 4d 08             	mov    0x8(%ebp),%ecx
4058a5:	51                   	push   %ecx
4058a6:	8b 15 a8 73 41 00    	mov    0x4173a8,%edx
4058ac:	81 c2 90 00 00 00    	add    $0x90,%edx
4058b2:	52                   	push   %edx
4058b3:	e8 e8 fc ff ff       	call   0x4055a0
4058b8:	83 c4 08             	add    $0x8,%esp
4058bb:	85 c0                	test   %eax,%eax
4058bd:	74 07                	je     0x4058c6
4058bf:	b8 01 00 00 00       	mov    $0x1,%eax
4058c4:	eb 02                	jmp    0x4058c8
4058c6:	33 c0                	xor    %eax,%eax
4058c8:	5d                   	pop    %ebp
4058c9:	c3                   	ret
4058ca:	cc                   	int3
4058cb:	cc                   	int3
4058cc:	cc                   	int3
4058cd:	cc                   	int3
4058ce:	cc                   	int3
4058cf:	cc                   	int3
4058d0:	55                   	push   %ebp
4058d1:	8b ec                	mov    %esp,%ebp
4058d3:	83 3d ac 73 41 00 00 	cmpl   $0x0,0x4173ac
4058da:	74 14                	je     0x4058f0
4058dc:	a1 a8 73 41 00       	mov    0x4173a8,%eax
4058e1:	83 b8 9c 00 00 00 00 	cmpl   $0x0,0x9c(%eax)
4058e8:	74 06                	je     0x4058f0
4058ea:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
4058ee:	75 04                	jne    0x4058f4
4058f0:	33 c0                	xor    %eax,%eax
4058f2:	eb 26                	jmp    0x40591a
4058f4:	8b 4d 08             	mov    0x8(%ebp),%ecx
4058f7:	51                   	push   %ecx
4058f8:	8b 15 a8 73 41 00    	mov    0x4173a8,%edx
4058fe:	81 c2 a8 00 00 00    	add    $0xa8,%edx
405904:	52                   	push   %edx
405905:	e8 96 fc ff ff       	call   0x4055a0
40590a:	83 c4 08             	add    $0x8,%esp
40590d:	85 c0                	test   %eax,%eax
40590f:	74 07                	je     0x405918
405911:	b8 01 00 00 00       	mov    $0x1,%eax
405916:	eb 02                	jmp    0x40591a
405918:	33 c0                	xor    %eax,%eax
40591a:	5d                   	pop    %ebp
40591b:	c3                   	ret
40591c:	cc                   	int3
40591d:	cc                   	int3
40591e:	cc                   	int3
40591f:	cc                   	int3
405920:	55                   	push   %ebp
405921:	8b ec                	mov    %esp,%ebp
405923:	83 3d ac 73 41 00 00 	cmpl   $0x0,0x4173ac
40592a:	74 14                	je     0x405940
40592c:	a1 a8 73 41 00       	mov    0x4173a8,%eax
405931:	83 b8 9c 00 00 00 00 	cmpl   $0x0,0x9c(%eax)
405938:	74 06                	je     0x405940
40593a:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
40593e:	75 04                	jne    0x405944
405940:	33 c0                	xor    %eax,%eax
405942:	eb 26                	jmp    0x40596a
405944:	8b 4d 08             	mov    0x8(%ebp),%ecx
405947:	51                   	push   %ecx
405948:	8b 15 a8 73 41 00    	mov    0x4173a8,%edx
40594e:	81 c2 a0 00 00 00    	add    $0xa0,%edx
405954:	52                   	push   %edx
405955:	e8 46 fc ff ff       	call   0x4055a0
40595a:	83 c4 08             	add    $0x8,%esp
40595d:	85 c0                	test   %eax,%eax
40595f:	74 07                	je     0x405968
405961:	b8 01 00 00 00       	mov    $0x1,%eax
405966:	eb 02                	jmp    0x40596a
405968:	33 c0                	xor    %eax,%eax
40596a:	5d                   	pop    %ebp
40596b:	c3                   	ret
40596c:	cc                   	int3
40596d:	cc                   	int3
40596e:	cc                   	int3
40596f:	cc                   	int3
405970:	55                   	push   %ebp
405971:	8b ec                	mov    %esp,%ebp
405973:	83 ec 0c             	sub    $0xc,%esp
405976:	83 3d ac 73 41 00 00 	cmpl   $0x0,0x4173ac
40597d:	74 11                	je     0x405990
40597f:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
405983:	74 0b                	je     0x405990
405985:	a1 a8 73 41 00       	mov    0x4173a8,%eax
40598a:	83 78 50 00          	cmpl   $0x0,0x50(%eax)
40598e:	75 04                	jne    0x405994
405990:	33 c0                	xor    %eax,%eax
405992:	eb 60                	jmp    0x4059f4
405994:	8b 4d 08             	mov    0x8(%ebp),%ecx
405997:	51                   	push   %ecx
405998:	e8 13 1f 00 00       	call   0x4078b0
40599d:	83 c4 04             	add    $0x4,%esp
4059a0:	89 45 fc             	mov    %eax,-0x4(%ebp)
4059a3:	c7 45 f8 55 70 03 be 	movl   $0xbe037055,-0x8(%ebp)
4059aa:	c7 45 f4 2d c4 25 b9 	movl   $0xb925c42d,-0xc(%ebp)
4059b1:	e8 ca e1 ff ff       	call   0x403b80
4059b6:	8b 55 fc             	mov    -0x4(%ebp),%edx
4059b9:	3b 50 20             	cmp    0x20(%eax),%edx
4059bc:	74 10                	je     0x4059ce
4059be:	8b 45 fc             	mov    -0x4(%ebp),%eax
4059c1:	3b 45 f8             	cmp    -0x8(%ebp),%eax
4059c4:	74 08                	je     0x4059ce
4059c6:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4059c9:	3b 4d f4             	cmp    -0xc(%ebp),%ecx
4059cc:	75 04                	jne    0x4059d2
4059ce:	33 c0                	xor    %eax,%eax
4059d0:	eb 22                	jmp    0x4059f4
4059d2:	8b 55 08             	mov    0x8(%ebp),%edx
4059d5:	52                   	push   %edx
4059d6:	a1 a8 73 41 00       	mov    0x4173a8,%eax
4059db:	83 c0 58             	add    $0x58,%eax
4059de:	50                   	push   %eax
4059df:	e8 bc fb ff ff       	call   0x4055a0
4059e4:	83 c4 08             	add    $0x8,%esp
4059e7:	85 c0                	test   %eax,%eax
4059e9:	74 07                	je     0x4059f2
4059eb:	b8 01 00 00 00       	mov    $0x1,%eax
4059f0:	eb 02                	jmp    0x4059f4
4059f2:	33 c0                	xor    %eax,%eax
4059f4:	8b e5                	mov    %ebp,%esp
4059f6:	5d                   	pop    %ebp
4059f7:	c3                   	ret
4059f8:	cc                   	int3
4059f9:	cc                   	int3
4059fa:	cc                   	int3
4059fb:	cc                   	int3
4059fc:	cc                   	int3
4059fd:	cc                   	int3
4059fe:	cc                   	int3
4059ff:	cc                   	int3
405a00:	55                   	push   %ebp
405a01:	8b ec                	mov    %esp,%ebp
405a03:	83 3d ac 73 41 00 00 	cmpl   $0x0,0x4173ac
405a0a:	74 11                	je     0x405a1d
405a0c:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
405a10:	74 0b                	je     0x405a1d
405a12:	a1 a8 73 41 00       	mov    0x4173a8,%eax
405a17:	83 78 50 00          	cmpl   $0x0,0x50(%eax)
405a1b:	75 04                	jne    0x405a21
405a1d:	33 c0                	xor    %eax,%eax
405a1f:	eb 23                	jmp    0x405a44
405a21:	8b 4d 08             	mov    0x8(%ebp),%ecx
405a24:	51                   	push   %ecx
405a25:	8b 15 a8 73 41 00    	mov    0x4173a8,%edx
405a2b:	83 c2 60             	add    $0x60,%edx
405a2e:	52                   	push   %edx
405a2f:	e8 6c fb ff ff       	call   0x4055a0
405a34:	83 c4 08             	add    $0x8,%esp
405a37:	85 c0                	test   %eax,%eax
405a39:	74 07                	je     0x405a42
405a3b:	b8 01 00 00 00       	mov    $0x1,%eax
405a40:	eb 02                	jmp    0x405a44
405a42:	33 c0                	xor    %eax,%eax
405a44:	5d                   	pop    %ebp
405a45:	c3                   	ret
405a46:	cc                   	int3
405a47:	cc                   	int3
405a48:	cc                   	int3
405a49:	cc                   	int3
405a4a:	cc                   	int3
405a4b:	cc                   	int3
405a4c:	cc                   	int3
405a4d:	cc                   	int3
405a4e:	cc                   	int3
405a4f:	cc                   	int3
405a50:	55                   	push   %ebp
405a51:	8b ec                	mov    %esp,%ebp
405a53:	51                   	push   %ecx
405a54:	83 3d ac 73 41 00 00 	cmpl   $0x0,0x4173ac
405a5b:	74 11                	je     0x405a6e
405a5d:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
405a61:	74 0b                	je     0x405a6e
405a63:	a1 a8 73 41 00       	mov    0x4173a8,%eax
405a68:	83 78 50 00          	cmpl   $0x0,0x50(%eax)
405a6c:	75 04                	jne    0x405a72
405a6e:	33 c0                	xor    %eax,%eax
405a70:	eb 43                	jmp    0x405ab5
405a72:	8b 4d 08             	mov    0x8(%ebp),%ecx
405a75:	51                   	push   %ecx
405a76:	e8 45 13 00 00       	call   0x406dc0
405a7b:	83 c4 04             	add    $0x4,%esp
405a7e:	89 45 fc             	mov    %eax,-0x4(%ebp)
405a81:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
405a85:	74 2c                	je     0x405ab3
405a87:	8b 55 fc             	mov    -0x4(%ebp),%edx
405a8a:	52                   	push   %edx
405a8b:	a1 a8 73 41 00       	mov    0x4173a8,%eax
405a90:	83 c0 68             	add    $0x68,%eax
405a93:	50                   	push   %eax
405a94:	e8 27 fb ff ff       	call   0x4055c0
405a99:	83 c4 08             	add    $0x8,%esp
405a9c:	85 c0                	test   %eax,%eax
405a9e:	74 07                	je     0x405aa7
405aa0:	b8 01 00 00 00       	mov    $0x1,%eax
405aa5:	eb 0e                	jmp    0x405ab5
405aa7:	8b 4d fc             	mov    -0x4(%ebp),%ecx
405aaa:	51                   	push   %ecx
405aab:	e8 00 0e 00 00       	call   0x4068b0
405ab0:	83 c4 04             	add    $0x4,%esp
405ab3:	33 c0                	xor    %eax,%eax
405ab5:	8b e5                	mov    %ebp,%esp
405ab7:	5d                   	pop    %ebp
405ab8:	c3                   	ret
405ab9:	cc                   	int3
405aba:	cc                   	int3
405abb:	cc                   	int3
405abc:	cc                   	int3
405abd:	cc                   	int3
405abe:	cc                   	int3
405abf:	cc                   	int3
405ac0:	55                   	push   %ebp
405ac1:	8b ec                	mov    %esp,%ebp
405ac3:	83 ec 14             	sub    $0x14,%esp
405ac6:	b8 01 00 00 00       	mov    $0x1,%eax
405acb:	85 c0                	test   %eax,%eax
405acd:	0f 84 19 01 00 00    	je     0x405bec
405ad3:	6a 05                	push   $0x5
405ad5:	e8 86 dc 00 00       	call   0x413760
405ada:	83 c4 04             	add    $0x4,%esp
405add:	89 45 ec             	mov    %eax,-0x14(%ebp)
405ae0:	83 7d ec 00          	cmpl   $0x0,-0x14(%ebp)
405ae4:	0f 84 ee 00 00 00    	je     0x405bd8
405aea:	8b 4d ec             	mov    -0x14(%ebp),%ecx
405aed:	89 4d f0             	mov    %ecx,-0x10(%ebp)
405af0:	8b 55 f0             	mov    -0x10(%ebp),%edx
405af3:	89 55 fc             	mov    %edx,-0x4(%ebp)
405af6:	8b 45 fc             	mov    -0x4(%ebp),%eax
405af9:	0f b7 48 38          	movzwl 0x38(%eax),%ecx
405afd:	83 c1 02             	add    $0x2,%ecx
405b00:	51                   	push   %ecx
405b01:	e8 7a 0d 00 00       	call   0x406880
405b06:	83 c4 04             	add    $0x4,%esp
405b09:	89 45 f8             	mov    %eax,-0x8(%ebp)
405b0c:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
405b10:	0f 84 94 00 00 00    	je     0x405baa
405b16:	8b 55 fc             	mov    -0x4(%ebp),%edx
405b19:	0f b7 42 38          	movzwl 0x38(%edx),%eax
405b1d:	50                   	push   %eax
405b1e:	8b 4d fc             	mov    -0x4(%ebp),%ecx
405b21:	8b 51 3c             	mov    0x3c(%ecx),%edx
405b24:	52                   	push   %edx
405b25:	8b 45 f8             	mov    -0x8(%ebp),%eax
405b28:	50                   	push   %eax
405b29:	e8 72 0e 00 00       	call   0x4069a0
405b2e:	83 c4 0c             	add    $0xc,%esp
405b31:	8b 4d f8             	mov    -0x8(%ebp),%ecx
405b34:	51                   	push   %ecx
405b35:	e8 36 fe ff ff       	call   0x405970
405b3a:	83 c4 04             	add    $0x4,%esp
405b3d:	85 c0                	test   %eax,%eax
405b3f:	74 5d                	je     0x405b9e
405b41:	e8 3a e0 ff ff       	call   0x403b80
405b46:	8b 55 fc             	mov    -0x4(%ebp),%edx
405b49:	8b 4a 44             	mov    0x44(%edx),%ecx
405b4c:	3b 48 10             	cmp    0x10(%eax),%ecx
405b4f:	75 12                	jne    0x405b63
405b51:	e8 2a e0 ff ff       	call   0x403b80
405b56:	8b 55 fc             	mov    -0x4(%ebp),%edx
405b59:	8b 4a 44             	mov    0x44(%edx),%ecx
405b5c:	3b 48 14             	cmp    0x14(%eax),%ecx
405b5f:	75 02                	jne    0x405b63
405b61:	eb 5c                	jmp    0x405bbf
405b63:	6a 01                	push   $0x1
405b65:	8b 55 fc             	mov    -0x4(%ebp),%edx
405b68:	8b 42 44             	mov    0x44(%edx),%eax
405b6b:	50                   	push   %eax
405b6c:	e8 ff e1 00 00       	call   0x413d70
405b71:	83 c4 08             	add    $0x8,%esp
405b74:	89 45 f4             	mov    %eax,-0xc(%ebp)
405b77:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
405b7b:	74 21                	je     0x405b9e
405b7d:	6a 00                	push   $0x0
405b7f:	8b 4d f4             	mov    -0xc(%ebp),%ecx