46a829:	eb 03                	jmp    0x46a82e
46a82b:	8b 48 34             	mov    0x34(%eax),%ecx
46a82e:	89 4d 18             	mov    %ecx,0x18(%ebp)
46a831:	80 fa 10             	cmp    $0x10,%dl
46a834:	75 09                	jne    0x46a83f
46a836:	c7 45 8c 00 00 ff ff 	movl   $0xffff0000,-0x74(%ebp)
46a83d:	eb 06                	jmp    0x46a845
46a83f:	8b 40 10             	mov    0x10(%eax),%eax
46a842:	89 45 8c             	mov    %eax,-0x74(%ebp)
46a845:	8b 35 70 d6 48 00    	mov    0x48d670,%esi
46a84b:	8b 7d 0c             	mov    0xc(%ebp),%edi
46a84e:	8d 45 8c             	lea    -0x74(%ebp),%eax
46a851:	50                   	push   %eax
46a852:	6a 00                	push   $0x0
46a854:	68 32 11 00 00       	push   $0x1132
46a859:	51                   	push   %ecx
46a85a:	ff d6                	call   *%esi
46a85c:	6a 00                	push   $0x0
46a85e:	6a 00                	push   $0x0
46a860:	89 47 10             	mov    %eax,0x10(%edi)
46a863:	8b 45 18             	mov    0x18(%ebp),%eax
46a866:	68 05 11 00 00       	push   $0x1105
46a86b:	50                   	push   %eax
46a86c:	89 47 34             	mov    %eax,0x34(%edi)
46a86f:	ff d6                	call   *%esi
46a871:	66 89 87 88 00 00 00 	mov    %ax,0x88(%edi)
46a878:	8b 47 10             	mov    0x10(%edi),%eax
46a87b:	89 83 b0 01 00 00    	mov    %eax,0x1b0(%ebx)
46a881:	b0 01                	mov    $0x1,%al
46a883:	5f                   	pop    %edi
46a884:	5e                   	pop    %esi
46a885:	5b                   	pop    %ebx
46a886:	c9                   	leave
46a887:	c2 14 00             	ret    $0x14
46a88a:	55                   	push   %ebp
46a88b:	8b ec                	mov    %esp,%ebp
46a88d:	8b 45 18             	mov    0x18(%ebp),%eax
46a890:	83 f8 ff             	cmp    $0xffffffff,%eax
46a893:	75 03                	jne    0x46a898
46a895:	6a 04                	push   $0x4
46a897:	58                   	pop    %eax
46a898:	a8 0c                	test   $0xc,%al
46a89a:	75 03                	jne    0x46a89f
46a89c:	83 c8 04             	or     $0x4,%eax
46a89f:	53                   	push   %ebx
46a8a0:	56                   	push   %esi
46a8a1:	57                   	push   %edi
46a8a2:	83 c8 02             	or     $0x2,%eax
46a8a5:	50                   	push   %eax
46a8a6:	e8 40 3a 00 00       	call   0x46e2eb
46a8ab:	8b 75 08             	mov    0x8(%ebp),%esi
46a8ae:	33 db                	xor    %ebx,%ebx
46a8b0:	53                   	push   %ebx
46a8b1:	51                   	push   %ecx
46a8b2:	ff 75 10             	push   0x10(%ebp)
46a8b5:	53                   	push   %ebx
46a8b6:	53                   	push   %ebx
46a8b7:	53                   	push   %ebx
46a8b8:	53                   	push   %ebx
46a8b9:	50                   	push   %eax
46a8ba:	53                   	push   %ebx
46a8bb:	68 d0 4b 4b 00       	push   $0x4b4bd0
46a8c0:	53                   	push   %ebx
46a8c1:	56                   	push   %esi
46a8c2:	e8 b5 28 fb ff       	call   0x41d17c
46a8c7:	8b f8                	mov    %eax,%edi
46a8c9:	85 ff                	test   %edi,%edi
46a8cb:	0f 84 8b 00 00 00    	je     0x46a95c
46a8d1:	ff 75 14             	push   0x14(%ebp)
46a8d4:	e8 62 77 fb ff       	call   0x42203b
46a8d9:	59                   	pop    %ecx
46a8da:	e8 f1 6f 00 00       	call   0x4718d0
46a8df:	8d 4d 10             	lea    0x10(%ebp),%ecx
46a8e2:	51                   	push   %ecx
46a8e3:	8d 4d 18             	lea    0x18(%ebp),%ecx
46a8e6:	51                   	push   %ecx
46a8e7:	50                   	push   %eax
46a8e8:	b9 28 16 4c 00       	mov    $0x4c1628,%ecx
46a8ed:	e8 0c 2b fa ff       	call   0x40d3fe
46a8f2:	84 c0                	test   %al,%al
46a8f4:	74 5f                	je     0x46a955
46a8f6:	8b 4d 18             	mov    0x18(%ebp),%ecx
46a8f9:	a1 88 16 4c 00       	mov    0x4c1688,%eax
46a8fe:	8b 04 88             	mov    (%eax,%ecx,4),%eax
46a901:	8b 08                	mov    (%eax),%ecx
46a903:	8b 06                	mov    (%esi),%eax
46a905:	3b 01                	cmp    (%ecx),%eax
46a907:	75 4c                	jne    0x46a955
46a909:	8b 55 10             	mov    0x10(%ebp),%edx
46a90c:	a1 9c 16 4c 00       	mov    0x4c169c,%eax
46a911:	8b 04 90             	mov    (%eax,%edx,4),%eax
46a914:	8b 00                	mov    (%eax),%eax
46a916:	80 b8 90 00 00 00 03 	cmpb   $0x3,0x90(%eax)
46a91d:	75 36                	jne    0x46a955
46a91f:	8b 4d 0c             	mov    0xc(%ebp),%ecx
46a922:	8b 35 70 d6 48 00    	mov    0x48d670,%esi
46a928:	89 39                	mov    %edi,(%ecx)
46a92a:	a1 9c 16 4c 00       	mov    0x4c169c,%eax
46a92f:	53                   	push   %ebx
46a930:	8b 04 90             	mov    (%eax,%edx,4),%eax
46a933:	8b 00                	mov    (%eax),%eax
46a935:	8b 00                	mov    (%eax),%eax
46a937:	50                   	push   %eax
46a938:	68 69 04 00 00       	push   $0x469
46a93d:	57                   	push   %edi
46a93e:	89 41 34             	mov    %eax,0x34(%ecx)
46a941:	ff d6                	call   *%esi
46a943:	68 ff 7f 01 80       	push   $0x80017fff
46a948:	53                   	push   %ebx
46a949:	68 65 04 00 00       	push   $0x465
46a94e:	57                   	push   %edi
46a94f:	ff d6                	call   *%esi
46a951:	b0 01                	mov    $0x1,%al
46a953:	eb 09                	jmp    0x46a95e
46a955:	57                   	push   %edi
46a956:	ff 15 24 d6 48 00    	call   *0x48d624
46a95c:	32 c0                	xor    %al,%al
46a95e:	5f                   	pop    %edi
46a95f:	5e                   	pop    %esi
46a960:	5b                   	pop    %ebx
46a961:	5d                   	pop    %ebp
46a962:	c2 14 00             	ret    $0x14
46a965:	55                   	push   %ebp
46a966:	8b ec                	mov    %esp,%ebp
46a968:	51                   	push   %ecx
46a969:	51                   	push   %ecx
46a96a:	8d 45 fc             	lea    -0x4(%ebp),%eax
46a96d:	50                   	push   %eax
46a96e:	8d 45 f8             	lea    -0x8(%ebp),%eax
46a971:	50                   	push   %eax
46a972:	ff 75 08             	push   0x8(%ebp)
46a975:	b9 28 16 4c 00       	mov    $0x4c1628,%ecx
46a97a:	e8 7f 2a fa ff       	call   0x40d3fe
46a97f:	84 c0                	test   %al,%al
46a981:	75 04                	jne    0x46a987
46a983:	33 c0                	xor    %eax,%eax
46a985:	eb 1e                	jmp    0x46a9a5
46a987:	ff 75 14             	push   0x14(%ebp)
46a98a:	8b 4d fc             	mov    -0x4(%ebp),%ecx
46a98d:	a1 9c 16 4c 00       	mov    0x4c169c,%eax
46a992:	ff 75 10             	push   0x10(%ebp)
46a995:	8b 04 88             	mov    (%eax,%ecx,4),%eax
46a998:	ff 75 0c             	push   0xc(%ebp)
46a99b:	8b 00                	mov    (%eax),%eax
46a99d:	ff 30                	push   (%eax)
46a99f:	ff 15 70 d6 48 00    	call   *0x48d670
46a9a5:	c9                   	leave
46a9a6:	c2 10 00             	ret    $0x10
46a9a9:	55                   	push   %ebp
46a9aa:	8b ec                	mov    %esp,%ebp
46a9ac:	56                   	push   %esi
46a9ad:	8b 75 08             	mov    0x8(%ebp),%esi
46a9b0:	83 3e 00             	cmpl   $0x0,(%esi)
46a9b3:	74 18                	je     0x46a9cd
46a9b5:	83 7e 08 00          	cmpl   $0x0,0x8(%esi)
46a9b9:	75 12                	jne    0x46a9cd
46a9bb:	68 af e9 46 00       	push   $0x46e9af
46a9c0:	6a fc                	push   $0xfffffffc
46a9c2:	ff 36                	push   (%esi)
46a9c4:	ff 15 f0 d4 48 00    	call   *0x48d4f0
46a9ca:	89 46 08             	mov    %eax,0x8(%esi)
46a9cd:	5e                   	pop    %esi
46a9ce:	5d                   	pop    %ebp
46a9cf:	c2 04 00             	ret    $0x4
46a9d2:	55                   	push   %ebp
46a9d3:	8b ec                	mov    %esp,%ebp
46a9d5:	83 ec 38             	sub    $0x38,%esp
46a9d8:	8d 45 fc             	lea    -0x4(%ebp),%eax
46a9db:	50                   	push   %eax
46a9dc:	8d 45 f8             	lea    -0x8(%ebp),%eax
46a9df:	50                   	push   %eax
46a9e0:	ff 75 08             	push   0x8(%ebp)
46a9e3:	b9 28 16 4c 00       	mov    $0x4c1628,%ecx
46a9e8:	e8 11 2a fa ff       	call   0x40d3fe
46a9ed:	84 c0                	test   %al,%al
46a9ef:	75 07                	jne    0x46a9f8
46a9f1:	32 c0                	xor    %al,%al
46a9f3:	e9 85 00 00 00       	jmp    0x46aa7d
46a9f8:	8b 4d fc             	mov    -0x4(%ebp),%ecx
46a9fb:	a1 9c 16 4c 00       	mov    0x4c169c,%eax
46aa00:	8b 14 88             	mov    (%eax,%ecx,4),%edx
46aa03:	8b 0a                	mov    (%edx),%ecx
46aa05:	0f b6 81 90 00 00 00 	movzbl 0x90(%ecx),%eax
46aa0c:	83 f8 10             	cmp    $0x10,%eax
46aa0f:	7f 48                	jg     0x46aa59
46aa11:	74 5c                	je     0x46aa6f
46aa13:	85 c0                	test   %eax,%eax
46aa15:	78 da                	js     0x46a9f1
46aa17:	83 f8 0a             	cmp    $0xa,%eax
46aa1a:	7e 53                	jle    0x46aa6f
46aa1c:	83 f8 0c             	cmp    $0xc,%eax
46aa1f:	74 33                	je     0x46aa54
46aa21:	83 f8 0e             	cmp    $0xe,%eax
46aa24:	75 cb                	jne    0x46a9f1
46aa26:	8d 45 c8             	lea    -0x38(%ebp),%eax
46aa29:	50                   	push   %eax
46aa2a:	6a 00                	push   $0x0
46aa2c:	ff 75 08             	push   0x8(%ebp)
46aa2f:	c7 45 c8 30 00 00 00 	movl   $0x30,-0x38(%ebp)
46aa36:	c7 45 cc 04 00 00 00 	movl   $0x4,-0x34(%ebp)
46aa3d:	ff 71 0c             	push   0xc(%ecx)
46aa40:	ff 15 bc d5 48 00    	call   *0x48d5bc
46aa46:	85 c0                	test   %eax,%eax
46aa48:	74 a7                	je     0x46a9f1
46aa4a:	8b 4d 0c             	mov    0xc(%ebp),%ecx
46aa4d:	8b 45 dc             	mov    -0x24(%ebp),%eax
46aa50:	89 01                	mov    %eax,(%ecx)
46aa52:	eb 27                	jmp    0x46aa7b
46aa54:	8b 49 0c             	mov    0xc(%ecx),%ecx
46aa57:	eb 1d                	jmp    0x46aa76
46aa59:	83 f8 11             	cmp    $0x11,%eax
46aa5c:	74 15                	je     0x46aa73
46aa5e:	7e 91                	jle    0x46a9f1
46aa60:	83 f8 13             	cmp    $0x13,%eax
46aa63:	7e 0a                	jle    0x46aa6f
46aa65:	83 f8 15             	cmp    $0x15,%eax
46aa68:	7e 87                	jle    0x46a9f1
46aa6a:	83 f8 1c             	cmp    $0x1c,%eax
46aa6d:	7f 82                	jg     0x46a9f1
46aa6f:	8b 09                	mov    (%ecx),%ecx
46aa71:	eb 03                	jmp    0x46aa76
46aa73:	8b 49 10             	mov    0x10(%ecx),%ecx
46aa76:	8b 45 0c             	mov    0xc(%ebp),%eax
46aa79:	89 08                	mov    %ecx,(%eax)
46aa7b:	b0 01                	mov    $0x1,%al
46aa7d:	c9                   	leave
46aa7e:	c2 08 00             	ret    $0x8
46aa81:	55                   	push   %ebp
46aa82:	8b ec                	mov    %esp,%ebp
46aa84:	51                   	push   %ecx
46aa85:	51                   	push   %ecx
46aa86:	8d 45 fc             	lea    -0x4(%ebp),%eax
46aa89:	50                   	push   %eax
46aa8a:	8d 45 f8             	lea    -0x8(%ebp),%eax
46aa8d:	50                   	push   %eax
46aa8e:	ff 75 08             	push   0x8(%ebp)
46aa91:	b9 28 16 4c 00       	mov    $0x4c1628,%ecx
46aa96:	e8 63 29 fa ff       	call   0x40d3fe
46aa9b:	84 c0                	test   %al,%al
46aa9d:	75 05                	jne    0x46aaa4
46aa9f:	83 c8 ff             	or     $0xffffffff,%eax
46aaa2:	eb 26                	jmp    0x46aaca
46aaa4:	8b 4d fc             	mov    -0x4(%ebp),%ecx
46aaa7:	a1 9c 16 4c 00       	mov    0x4c169c,%eax
46aaac:	8b 04 88             	mov    (%eax,%ecx,4),%eax
46aaaf:	8b 00                	mov    (%eax),%eax
46aab1:	80 b8 90 00 00 00 13 	cmpb   $0x13,0x90(%eax)
46aab8:	75 09                	jne    0x46aac3
46aaba:	0f bf 80 96 00 00 00 	movswl 0x96(%eax),%eax
46aac1:	eb 07                	jmp    0x46aaca
46aac3:	0f b6 80 92 00 00 00 	movzbl 0x92(%eax),%eax
46aaca:	c9                   	leave
46aacb:	c2 04 00             	ret    $0x4
46aace:	55                   	push   %ebp
46aacf:	8b ec                	mov    %esp,%ebp
46aad1:	81 ec c8 00 00 00    	sub    $0xc8,%esp
46aad7:	8d 45 f8             	lea    -0x8(%ebp),%eax
46aada:	53                   	push   %ebx
46aadb:	56                   	push   %esi
46aadc:	57                   	push   %edi
46aadd:	50                   	push   %eax
46aade:	8d 45 88             	lea    -0x78(%ebp),%eax
46aae1:	50                   	push   %eax
46aae2:	ff 75 08             	push   0x8(%ebp)
46aae5:	b9 28 16 4c 00       	mov    $0x4c1628,%ecx
46aaea:	e8 0f 29 fa ff       	call   0x40d3fe
46aaef:	84 c0                	test   %al,%al
46aaf1:	75 0b                	jne    0x46aafe
46aaf3:	8b 45 0c             	mov    0xc(%ebp),%eax
46aaf6:	83 20 00             	andl   $0x0,(%eax)
46aaf9:	e9 d7 06 00 00       	jmp    0x46b1d5
46aafe:	8b 4d f8             	mov    -0x8(%ebp),%ecx
46ab01:	a1 9c 16 4c 00       	mov    0x4c169c,%eax
46ab06:	8b 5d 0c             	mov    0xc(%ebp),%ebx
46ab09:	8b 04 88             	mov    (%eax,%ecx,4),%eax
46ab0c:	83 0b ff             	orl    $0xffffffff,(%ebx)
46ab0f:	8b 08                	mov    (%eax),%ecx
46ab11:	33 ff                	xor    %edi,%edi
46ab13:	0f b6 81 90 00 00 00 	movzbl 0x90(%ecx),%eax
46ab1a:	8b 31                	mov    (%ecx),%esi
46ab1c:	89 4d f8             	mov    %ecx,-0x8(%ebp)
46ab1f:	89 75 0c             	mov    %esi,0xc(%ebp)
46ab22:	83 f8 11             	cmp    $0x11,%eax
46ab25:	0f 8f 67 03 00 00    	jg     0x46ae92
46ab2b:	0f 84 b0 02 00 00    	je     0x46ade1
46ab31:	83 f8 0a             	cmp    $0xa,%eax
46ab34:	0f 8f 00 01 00 00    	jg     0x46ac3a
46ab3a:	0f 84 ba 00 00 00    	je     0x46abfa
46ab40:	2b c7                	sub    %edi,%eax
46ab42:	74 6c                	je     0x46abb0
46ab44:	48                   	dec    %eax
46ab45:	74 15                	je     0x46ab5c
46ab47:	83 e8 07             	sub    $0x7,%eax
46ab4a:	0f 85 39 04 00 00    	jne    0x46af89
46ab50:	57                   	push   %edi
46ab51:	57                   	push   %edi
46ab52:	68 08 04 00 00       	push   $0x408
46ab57:	e9 70 06 00 00       	jmp    0x46b1cc
46ab5c:	57                   	push   %edi
46ab5d:	57                   	push   %edi
46ab5e:	68 88 01 00 00       	push   $0x188
46ab63:	56                   	push   %esi
46ab64:	ff 15 70 d6 48 00    	call   *0x48d670
46ab6a:	8b d8                	mov    %eax,%ebx
46ab6c:	83 fb ff             	cmp    $0xffffffff,%ebx
46ab6f:	0f 84 14 04 00 00    	je     0x46af89
46ab75:	57                   	push   %edi
46ab76:	8b 3d 70 d6 48 00    	mov    0x48d670,%edi
46ab7c:	53                   	push   %ebx
46ab7d:	68 8a 01 00 00       	push   $0x18a
46ab82:	56                   	push   %esi
46ab83:	ff d7                	call   *%edi
46ab85:	33 c9                	xor    %ecx,%ecx
46ab87:	6a 02                	push   $0x2
46ab89:	40                   	inc    %eax
46ab8a:	5a                   	pop    %edx
46ab8b:	f7 e2                	mul    %edx
46ab8d:	0f 90 c1             	seto   %cl
46ab90:	f7 d9                	neg    %ecx
46ab92:	0b c8                	or     %eax,%ecx
46ab94:	51                   	push   %ecx
46ab95:	e8 50 49 fb ff       	call   0x41f4ea
46ab9a:	59                   	pop    %ecx
46ab9b:	8b f0                	mov    %eax,%esi
46ab9d:	56                   	push   %esi
46ab9e:	53                   	push   %ebx
46ab9f:	68 89 01 00 00       	push   $0x189
46aba4:	ff 75 0c             	push   0xc(%ebp)
46aba7:	ff d7                	call   *%edi
46aba9:	8b c6                	mov    %esi,%eax
46abab:	e9 27 06 00 00       	jmp    0x46b1d7
46abb0:	57                   	push   %edi
46abb1:	57                   	push   %edi
46abb2:	68 47 01 00 00       	push   $0x147
46abb7:	56                   	push   %esi
46abb8:	ff 15 70 d6 48 00    	call   *0x48d670
46abbe:	8b d8                	mov    %eax,%ebx
46abc0:	83 fb ff             	cmp    $0xffffffff,%ebx
46abc3:	0f 84 c0 03 00 00    	je     0x46af89
46abc9:	57                   	push   %edi
46abca:	8b 3d 70 d6 48 00    	mov    0x48d670,%edi
46abd0:	53                   	push   %ebx
46abd1:	68 49 01 00 00       	push   $0x149
46abd6:	56                   	push   %esi
46abd7:	ff d7                	call   *%edi
46abd9:	33 c9                	xor    %ecx,%ecx
46abdb:	6a 02                	push   $0x2
46abdd:	40                   	inc    %eax
46abde:	5a                   	pop    %edx
46abdf:	f7 e2                	mul    %edx