41a90b:	ff 75 fc             	push   -0x4(%ebp)
41a90e:	e8 dc ab 02 00       	call   0x4454ef
41a913:	5f                   	pop    %edi
41a914:	8b c6                	mov    %esi,%eax
41a916:	5e                   	pop    %esi
41a917:	5b                   	pop    %ebx
41a918:	8b e5                	mov    %ebp,%esp
41a91a:	5d                   	pop    %ebp
41a91b:	c2 0c 00             	ret    $0xc
41a91e:	a1 a0 aa 46 00       	mov    0x46aaa0,%eax
41a923:	56                   	push   %esi
41a924:	33 f6                	xor    %esi,%esi
41a926:	85 c0                	test   %eax,%eax
41a928:	74 0c                	je     0x41a936
41a92a:	50                   	push   %eax
41a92b:	e8 bf ab 02 00       	call   0x4454ef
41a930:	89 35 a0 aa 46 00    	mov    %esi,0x46aaa0
41a936:	a1 9c aa 46 00       	mov    0x46aa9c,%eax
41a93b:	85 c0                	test   %eax,%eax
41a93d:	74 0c                	je     0x41a94b
41a93f:	50                   	push   %eax
41a940:	e8 aa ab 02 00       	call   0x4454ef
41a945:	89 35 9c aa 46 00    	mov    %esi,0x46aa9c
41a94b:	a1 98 aa 46 00       	mov    0x46aa98,%eax
41a950:	85 c0                	test   %eax,%eax
41a952:	74 0c                	je     0x41a960
41a954:	50                   	push   %eax
41a955:	e8 95 ab 02 00       	call   0x4454ef
41a95a:	89 35 98 aa 46 00    	mov    %esi,0x46aa98
41a960:	a1 94 aa 46 00       	mov    0x46aa94,%eax
41a965:	85 c0                	test   %eax,%eax
41a967:	74 0c                	je     0x41a975
41a969:	50                   	push   %eax
41a96a:	e8 80 ab 02 00       	call   0x4454ef
41a96f:	89 35 94 aa 46 00    	mov    %esi,0x46aa94
41a975:	a1 90 aa 46 00       	mov    0x46aa90,%eax
41a97a:	85 c0                	test   %eax,%eax
41a97c:	74 0c                	je     0x41a98a
41a97e:	50                   	push   %eax
41a97f:	e8 6b ab 02 00       	call   0x4454ef
41a984:	89 35 90 aa 46 00    	mov    %esi,0x46aa90
41a98a:	89 35 a8 aa 46 00    	mov    %esi,0x46aaa8
41a990:	89 35 a4 aa 46 00    	mov    %esi,0x46aaa4
41a996:	5e                   	pop    %esi
41a997:	c3                   	ret
41a998:	55                   	push   %ebp
41a999:	8b ec                	mov    %esp,%ebp
41a99b:	83 ec 58             	sub    $0x58,%esp
41a99e:	a1 08 a0 46 00       	mov    0x46a008,%eax
41a9a3:	33 c5                	xor    %ebp,%eax
41a9a5:	89 45 fc             	mov    %eax,-0x4(%ebp)
41a9a8:	8b 45 08             	mov    0x8(%ebp),%eax
41a9ab:	53                   	push   %ebx
41a9ac:	56                   	push   %esi
41a9ad:	57                   	push   %edi
41a9ae:	89 45 e8             	mov    %eax,-0x18(%ebp)
41a9b1:	8d 7d d8             	lea    -0x28(%ebp),%edi
41a9b4:	8b 5d 0c             	mov    0xc(%ebp),%ebx
41a9b7:	33 c0                	xor    %eax,%eax
41a9b9:	8b 75 10             	mov    0x10(%ebp),%esi
41a9bc:	ab                   	stos   %eax,%es:(%edi)
41a9bd:	6a 30                	push   $0x30
41a9bf:	c7 45 ec 6b c5 aa 00 	movl   $0xaac56b,-0x14(%ebp)
41a9c6:	c7 45 f0 44 cd d0 11 	movl   $0x11d0cd44,-0x10(%ebp)
41a9cd:	ab                   	stos   %eax,%es:(%edi)
41a9ce:	c7 45 f4 8c c2 00 c0 	movl   $0xc000c28c,-0xc(%ebp)
41a9d5:	c7 45 f8 4f c2 95 ee 	movl   $0xee95c24f,-0x8(%ebp)
41a9dc:	ab                   	stos   %eax,%es:(%edi)
41a9dd:	ab                   	stos   %eax,%es:(%edi)
41a9de:	8d 45 a8             	lea    -0x58(%ebp),%eax
41a9e1:	5f                   	pop    %edi
41a9e2:	57                   	push   %edi
41a9e3:	6a 00                	push   $0x0
41a9e5:	50                   	push   %eax
41a9e6:	e8 85 4c 01 00       	call   0x42f670
41a9eb:	83 c4 0c             	add    $0xc,%esp
41a9ee:	c7 45 d8 10 00 00 00 	movl   $0x10,-0x28(%ebp)
41a9f5:	8d 45 d8             	lea    -0x28(%ebp),%eax
41a9f8:	89 5d dc             	mov    %ebx,-0x24(%ebp)
41a9fb:	89 45 c0             	mov    %eax,-0x40(%ebp)
41a9fe:	33 c9                	xor    %ecx,%ecx
41aa00:	8d 45 a8             	lea    -0x58(%ebp),%eax
41aa03:	89 75 e0             	mov    %esi,-0x20(%ebp)
41aa06:	50                   	push   %eax
41aa07:	8d 45 ec             	lea    -0x14(%ebp),%eax
41aa0a:	89 7d a8             	mov    %edi,-0x58(%ebp)
41aa0d:	41                   	inc    %ecx
41aa0e:	c7 45 d0 80 00 00 00 	movl   $0x80,-0x30(%ebp)
41aa15:	50                   	push   %eax
41aa16:	6a ff                	push   $0xffffffff
41aa18:	89 4d bc             	mov    %ecx,-0x44(%ebp)
41aa1b:	89 4d c4             	mov    %ecx,-0x3c(%ebp)
41aa1e:	c7 45 b4 02 00 00 00 	movl   $0x2,-0x4c(%ebp)
41aa25:	e8 02 4a 02 00       	call   0x43f42c
41aa2a:	85 c0                	test   %eax,%eax
41aa2c:	74 56                	je     0x41aa84
41aa2e:	81 4d d0 00 10 00 00 	orl    $0x1000,-0x30(%ebp)
41aa35:	8d 45 a8             	lea    -0x58(%ebp),%eax
41aa38:	50                   	push   %eax
41aa39:	8d 45 ec             	lea    -0x14(%ebp),%eax
41aa3c:	50                   	push   %eax
41aa3d:	6a ff                	push   $0xffffffff
41aa3f:	e8 e8 49 02 00       	call   0x43f42c
41aa44:	85 c0                	test   %eax,%eax
41aa46:	74 3c                	je     0x41aa84
41aa48:	0f b7 f0             	movzwl %ax,%esi
41aa4b:	81 ce 00 00 07 80    	or     $0x80070000,%esi
41aa51:	85 c0                	test   %eax,%eax
41aa53:	0f 4e f0             	cmovle %eax,%esi
41aa56:	b8 05 40 00 80       	mov    $0x80004005,%eax
41aa5b:	85 f6                	test   %esi,%esi
41aa5d:	0f 49 f0             	cmovns %eax,%esi
41aa60:	56                   	push   %esi
41aa61:	68 e9 03 00 00       	push   $0x3e9
41aa66:	68 50 65 45 00       	push   $0x456550
41aa6b:	e8 63 8d fe ff       	call   0x4037d3
41aa70:	53                   	push   %ebx
41aa71:	68 60 6b 45 00       	push   $0x456b60
41aa76:	56                   	push   %esi
41aa77:	e8 b3 56 02 00       	call   0x44012f
41aa7c:	83 c4 0c             	add    $0xc,%esp
41aa7f:	e9 a3 00 00 00       	jmp    0x41ab27
41aa84:	ff 75 c8             	push   -0x38(%ebp)
41aa87:	e8 c0 49 02 00       	call   0x43f44c
41aa8c:	85 c0                	test   %eax,%eax
41aa8e:	75 35                	jne    0x41aac5
41aa90:	ff 15 e8 b0 44 00    	call   *0x44b0e8
41aa96:	0f b7 f0             	movzwl %ax,%esi
41aa99:	81 ce 00 00 07 80    	or     $0x80070000,%esi
41aa9f:	85 c0                	test   %eax,%eax
41aaa1:	0f 4e f0             	cmovle %eax,%esi
41aaa4:	b8 05 40 00 80       	mov    $0x80004005,%eax
41aaa9:	85 f6                	test   %esi,%esi
41aaab:	0f 49 f0             	cmovns %eax,%esi
41aaae:	56                   	push   %esi
41aaaf:	68 ed 03 00 00       	push   $0x3ed
41aab4:	68 50 65 45 00       	push   $0x456550
41aab9:	e8 15 8d fe ff       	call   0x4037d3
41aabe:	68 94 6b 45 00       	push   $0x456b94
41aac3:	eb 5a                	jmp    0x41ab1f
41aac5:	33 c9                	xor    %ecx,%ecx
41aac7:	51                   	push   %ecx
41aac8:	51                   	push   %ecx
41aac9:	51                   	push   %ecx
41aaca:	50                   	push   %eax
41aacb:	e8 6c 49 02 00       	call   0x43f43c
41aad0:	85 c0                	test   %eax,%eax
41aad2:	75 35                	jne    0x41ab09
41aad4:	ff 15 e8 b0 44 00    	call   *0x44b0e8
41aada:	0f b7 f0             	movzwl %ax,%esi
41aadd:	81 ce 00 00 07 80    	or     $0x80070000,%esi
41aae3:	85 c0                	test   %eax,%eax
41aae5:	0f 4e f0             	cmovle %eax,%esi
41aae8:	b8 05 40 00 80       	mov    $0x80004005,%eax
41aaed:	85 f6                	test   %esi,%esi
41aaef:	0f 49 f0             	cmovns %eax,%esi
41aaf2:	56                   	push   %esi
41aaf3:	68 f0 03 00 00       	push   $0x3f0
41aaf8:	68 50 65 45 00       	push   $0x456550
41aafd:	e8 d1 8c fe ff       	call   0x4037d3
41ab02:	68 d0 6b 45 00       	push   $0x456bd0
41ab07:	eb 16                	jmp    0x41ab1f
41ab09:	ff 70 28             	push   0x28(%eax)
41ab0c:	ff 75 e8             	push   -0x18(%ebp)
41ab0f:	e8 6c e5 ff ff       	call   0x419080
41ab14:	8b f0                	mov    %eax,%esi
41ab16:	85 f6                	test   %esi,%esi
41ab18:	79 0d                	jns    0x41ab27
41ab1a:	68 10 6c 45 00       	push   $0x456c10
41ab1f:	56                   	push   %esi
41ab20:	e8 0a 56 02 00       	call   0x44012f
41ab25:	59                   	pop    %ecx
41ab26:	59                   	pop    %ecx
41ab27:	8b 4d fc             	mov    -0x4(%ebp),%ecx
41ab2a:	8b c6                	mov    %esi,%eax
41ab2c:	5f                   	pop    %edi
41ab2d:	5e                   	pop    %esi
41ab2e:	33 cd                	xor    %ebp,%ecx
41ab30:	5b                   	pop    %ebx
41ab31:	e8 00 33 01 00       	call   0x42de36
41ab36:	8b e5                	mov    %ebp,%esp
41ab38:	5d                   	pop    %ebp
41ab39:	c2 0c 00             	ret    $0xc
41ab3c:	55                   	push   %ebp
41ab3d:	8b ec                	mov    %esp,%ebp
41ab3f:	51                   	push   %ecx
41ab40:	51                   	push   %ecx
41ab41:	56                   	push   %esi
41ab42:	57                   	push   %edi
41ab43:	8b 7d 08             	mov    0x8(%ebp),%edi
41ab46:	33 f6                	xor    %esi,%esi
41ab48:	89 75 f8             	mov    %esi,-0x8(%ebp)
41ab4b:	89 75 fc             	mov    %esi,-0x4(%ebp)
41ab4e:	ff 77 04             	push   0x4(%edi)
41ab51:	ff 37                	push   (%edi)
41ab53:	ff 15 9c b1 44 00    	call   *0x44b19c
41ab59:	85 c0                	test   %eax,%eax
41ab5b:	75 3d                	jne    0x41ab9a
41ab5d:	ff 15 e8 b0 44 00    	call   *0x44b0e8
41ab63:	0f b7 f0             	movzwl %ax,%esi
41ab66:	81 ce 00 00 07 80    	or     $0x80070000,%esi
41ab6c:	85 c0                	test   %eax,%eax
41ab6e:	0f 4e f0             	cmovle %eax,%esi
41ab71:	b8 05 40 00 80       	mov    $0x80004005,%eax
41ab76:	85 f6                	test   %esi,%esi
41ab78:	0f 49 f0             	cmovns %eax,%esi
41ab7b:	56                   	push   %esi
41ab7c:	68 8a 04 00 00       	push   $0x48a
41ab81:	68 50 7a 45 00       	push   $0x457a50
41ab86:	e8 48 8c fe ff       	call   0x4037d3
41ab8b:	68 d0 89 45 00       	push   $0x4589d0
41ab90:	56                   	push   %esi
41ab91:	e8 99 55 02 00       	call   0x44012f
41ab96:	59                   	pop    %ecx
41ab97:	59                   	pop    %ecx
41ab98:	eb 45                	jmp    0x41abdf
41ab9a:	56                   	push   %esi
41ab9b:	56                   	push   %esi
41ab9c:	ff 15 b0 b3 44 00    	call   *0x44b3b0
41aba2:	8b f0                	mov    %eax,%esi
41aba4:	85 f6                	test   %esi,%esi
41aba6:	79 07                	jns    0x41abaf
41aba8:	68 38 b9 44 00       	push   $0x44b938
41abad:	eb e1                	jmp    0x41ab90
41abaf:	8d 45 f8             	lea    -0x8(%ebp),%eax
41abb2:	50                   	push   %eax
41abb3:	57                   	push   %edi
41abb4:	68 f4 c4 41 00       	push   $0x41c4f4
41abb9:	ff 77 04             	push   0x4(%edi)
41abbc:	e8 f2 a3 ff ff       	call   0x414fb3
41abc1:	8b f0                	mov    %eax,%esi
41abc3:	85 f6                	test   %esi,%esi
41abc5:	79 0f                	jns    0x41abd6
41abc7:	68 58 89 45 00       	push   $0x458958
41abcc:	56                   	push   %esi
41abcd:	e8 5d 55 02 00       	call   0x44012f
41abd2:	59                   	pop    %ecx
41abd3:	59                   	pop    %ecx
41abd4:	eb 03                	jmp    0x41abd9
41abd6:	8b 75 f8             	mov    -0x8(%ebp),%esi
41abd9:	ff 15 ac b3 44 00    	call   *0x44b3ac
41abdf:	5f                   	pop    %edi
41abe0:	8b c6                	mov    %esi,%eax
41abe2:	5e                   	pop    %esi
41abe3:	8b e5                	mov    %ebp,%esp
41abe5:	5d                   	pop    %ebp
41abe6:	c2 04 00             	ret    $0x4
41abe9:	55                   	push   %ebp
41abea:	8b ec                	mov    %esp,%ebp
41abec:	83 ec 0c             	sub    $0xc,%esp
41abef:	53                   	push   %ebx
41abf0:	56                   	push   %esi
41abf1:	8b 75 08             	mov    0x8(%ebp),%esi
41abf4:	8d 45 f8             	lea    -0x8(%ebp),%eax
41abf7:	57                   	push   %edi
41abf8:	33 db                	xor    %ebx,%ebx
41abfa:	c7 45 f4 01 00 00 00 	movl   $0x1,-0xc(%ebp)
41ac01:	89 5d fc             	mov    %ebx,-0x4(%ebp)
41ac04:	8b fb                	mov    %ebx,%edi
41ac06:	ff 76 04             	push   0x4(%esi)
41ac09:	89 5d f8             	mov    %ebx,-0x8(%ebp)
41ac0c:	50                   	push   %eax
41ac0d:	8d 45 fc             	lea    -0x4(%ebp),%eax
41ac10:	50                   	push   %eax
41ac11:	e8 9c 4b 02 00       	call   0x43f7b2
41ac16:	85 c0                	test   %eax,%eax
41ac18:	79 0a                	jns    0x41ac24
41ac1a:	68 a4 96 45 00       	push   $0x4596a4
41ac1f:	e9 d6 00 00 00       	jmp    0x41acfa
41ac24:	8b 06                	mov    (%esi),%eax
41ac26:	83 e8 01             	sub    $0x1,%eax
41ac29:	74 78                	je     0x41aca3
41ac2b:	83 e8 01             	sub    $0x1,%eax
41ac2e:	74 54                	je     0x41ac84
41ac30:	83 e8 01             	sub    $0x1,%eax
41ac33:	0f 85 a3 00 00 00    	jne    0x41acdc
41ac39:	ff 76 08             	push   0x8(%esi)
41ac3c:	8d 45 f8             	lea    -0x8(%ebp),%eax
41ac3f:	50                   	push   %eax
41ac40:	8d 45 fc             	lea    -0x4(%ebp),%eax
41ac43:	50                   	push   %eax
41ac44:	e8 69 4b 02 00       	call   0x43f7b2
41ac49:	85 c0                	test   %eax,%eax
41ac4b:	79 0a                	jns    0x41ac57
41ac4d:	68 54 97 45 00       	push   $0x459754
41ac52:	e9 a3 00 00 00       	jmp    0x41acfa
41ac57:	39 5e 08             	cmp    %ebx,0x8(%esi)
41ac5a:	76 1d                	jbe    0x41ac79
41ac5c:	8b 46 0c             	mov    0xc(%esi),%eax
41ac5f:	ff 34 b8             	push   (%eax,%edi,4)
41ac62:	8d 45 f8             	lea    -0x8(%ebp),%eax
41ac65:	50                   	push   %eax
41ac66:	8d 45 fc             	lea    -0x4(%ebp),%eax
41ac69:	50                   	push   %eax
41ac6a:	e8 71 4b 02 00       	call   0x43f7e0
41ac6f:	85 c0                	test   %eax,%eax
41ac71:	78 0a                	js     0x41ac7d
41ac73:	47                   	inc    %edi
41ac74:	3b 7e 08             	cmp    0x8(%esi),%edi
41ac77:	72 e3                	jb     0x41ac5c
41ac79:	6a 18                	push   $0x18
41ac7b:	eb 5e                	jmp    0x41acdb
41ac7d:	68 88 97 45 00       	push   $0x459788
41ac82:	eb 76                	jmp    0x41acfa
41ac84:	ff 76 08             	push   0x8(%esi)
41ac87:	8d 45 f8             	lea    -0x8(%ebp),%eax
41ac8a:	50                   	push   %eax
41ac8b:	8d 45 fc             	lea    -0x4(%ebp),%eax
41ac8e:	50                   	push   %eax
41ac8f:	e8 1e 4b 02 00       	call   0x43f7b2
41ac94:	85 c0                	test   %eax,%eax
41ac96:	79 07                	jns    0x41ac9f
41ac98:	68 c0 96 45 00       	push   $0x4596c0
41ac9d:	eb 5b                	jmp    0x41acfa
41ac9f:	6a 15                	push   $0x15
41aca1:	eb 38                	jmp    0x41acdb
41aca3:	ff 76 08             	push   0x8(%esi)
41aca6:	8d 45 f8             	lea    -0x8(%ebp),%eax
41aca9:	50                   	push   %eax
41acaa:	8d 45 fc             	lea    -0x4(%ebp),%eax
41acad:	50                   	push   %eax
41acae:	e8 ff 4a 02 00       	call   0x43f7b2
41acb3:	85 c0                	test   %eax,%eax
41acb5:	79 07                	jns    0x41acbe
41acb7:	68 f8 96 45 00       	push   $0x4596f8
41acbc:	eb 3c                	jmp    0x41acfa
41acbe:	ff 76 0c             	push   0xc(%esi)
41acc1:	8d 45 f8             	lea    -0x8(%ebp),%eax
41acc4:	50                   	push   %eax
41acc5:	8d 45 fc             	lea    -0x4(%ebp),%eax
41acc8:	50                   	push   %eax
41acc9:	e8 12 4b 02 00       	call   0x43f7e0
41acce:	85 c0                	test   %eax,%eax
41acd0:	79 07                	jns    0x41acd9
41acd2:	68 28 97 45 00       	push   $0x459728
41acd7:	eb 21                	jmp    0x41acfa
41acd9:	6a 16                	push   $0x16
41acdb:	5f                   	pop    %edi
41acdc:	8d 45 f4             	lea    -0xc(%ebp),%eax
41acdf:	50                   	push   %eax
41ace0:	53                   	push   %ebx
41ace1:	53                   	push   %ebx
41ace2:	ff 75 f8             	push   -0x8(%ebp)
41ace5:	ff 75 fc             	push   -0x4(%ebp)
41ace8:	57                   	push   %edi
41ace9:	ff 75 0c             	push   0xc(%ebp)
41acec:	e8 94 a4 ff ff       	call   0x415185
41acf1:	85 c0                	test   %eax,%eax
41acf3:	79 0d                	jns    0x41ad02
41acf5:	68 b8 97 45 00       	push   $0x4597b8