46bdfb:	eb 53                	jmp    0x46be50
46bdfd:	68 fc a4 48 00       	push   $0x48a4fc
46be02:	ff d7                	call   *%edi
46be04:	3b c3                	cmp    %ebx,%eax
46be06:	74 48                	je     0x46be50
46be08:	8d 4d e8             	lea    -0x18(%ebp),%ecx
46be0b:	51                   	push   %ecx
46be0c:	68 95 bc 46 00       	push   $0x46bc95
46be11:	6a 01                	push   $0x1
46be13:	6a 10                	push   $0x10
46be15:	50                   	push   %eax
46be16:	89 5d e8             	mov    %ebx,-0x18(%ebp)
46be19:	ff 15 00 03 4b 00    	call   *0x4b0300
46be1f:	66 39 5d e8          	cmp    %bx,-0x18(%ebp)
46be23:	74 2b                	je     0x46be50
46be25:	0f b7 45 e8          	movzwl -0x18(%ebp),%eax
46be29:	8b 35 fc 02 4b 00    	mov    0x4b02fc,%esi
46be2f:	8b c8                	mov    %eax,%ecx
46be31:	81 e1 ff 03 00 00    	and    $0x3ff,%ecx
46be37:	0f b7 f9             	movzwl %cx,%edi
46be3a:	25 00 fc 00 00       	and    $0xfc00,%eax
46be3f:	0b c7                	or     %edi,%eax
46be41:	50                   	push   %eax
46be42:	ff d6                	call   *%esi
46be44:	57                   	push   %edi
46be45:	89 45 c4             	mov    %eax,-0x3c(%ebp)
46be48:	ff d6                	call   *%esi
46be4a:	89 45 c8             	mov    %eax,-0x38(%ebp)
46be4d:	6a 02                	push   $0x2
46be4f:	5e                   	pop    %esi
46be50:	c7 44 b5 c4 00 08 00 	movl   $0x800,-0x3c(%ebp,%esi,4)
46be57:	00
46be58:	46                   	inc    %esi
46be59:	33 ff                	xor    %edi,%edi
46be5b:	3b f3                	cmp    %ebx,%esi
46be5d:	7e 17                	jle    0x46be76
46be5f:	ff 74 bd c4          	push   -0x3c(%ebp,%edi,4)
46be63:	ff 75 08             	push   0x8(%ebp)
46be66:	e8 ab fd ff ff       	call   0x46bc16
46be6b:	3b c3                	cmp    %ebx,%eax
46be6d:	59                   	pop    %ecx
46be6e:	59                   	pop    %ecx
46be6f:	75 07                	jne    0x46be78
46be71:	47                   	inc    %edi
46be72:	3b fe                	cmp    %esi,%edi
46be74:	7c e9                	jl     0x46be5f
46be76:	33 c0                	xor    %eax,%eax
46be78:	8b 4d fc             	mov    -0x4(%ebp),%ecx
46be7b:	5f                   	pop    %edi
46be7c:	5e                   	pop    %esi
46be7d:	5b                   	pop    %ebx
46be7e:	e8 5b bd fa ff       	call   0x417bde
46be83:	c9                   	leave
46be84:	c2 04 00             	ret    $0x4
46be87:	55                   	push   %ebp
46be88:	8b ec                	mov    %esp,%ebp
46be8a:	83 ec 14             	sub    $0x14,%esp
46be8d:	53                   	push   %ebx
46be8e:	57                   	push   %edi
46be8f:	33 ff                	xor    %edi,%edi
46be91:	89 b9 9c 00 00 00    	mov    %edi,0x9c(%ecx)
46be97:	39 3d f8 75 4a 00    	cmp    %edi,0x4a75f8
46be9d:	89 4d f0             	mov    %ecx,-0x10(%ebp)
46bea0:	89 7d fc             	mov    %edi,-0x4(%ebp)
46bea3:	89 7d f8             	mov    %edi,-0x8(%ebp)
46bea6:	c7 45 ec 04 00 00 00 	movl   $0x4,-0x14(%ebp)
46bead:	89 7d f4             	mov    %edi,-0xc(%ebp)
46beb0:	bb f8 75 4a 00       	mov    $0x4a75f8,%ebx
46beb5:	0f 84 88 00 00 00    	je     0x46bf43
46bebb:	56                   	push   %esi
46bebc:	8d 45 fc             	lea    -0x4(%ebp),%eax
46bebf:	50                   	push   %eax
46bec0:	6a 01                	push   $0x1
46bec2:	57                   	push   %edi
46bec3:	ff 33                	push   (%ebx)
46bec5:	68 01 00 00 80       	push   $0x80000001
46beca:	ff 15 8c fe 4a 00    	call   *0x4afe8c
46bed0:	85 c0                	test   %eax,%eax
46bed2:	75 57                	jne    0x46bf2b
46bed4:	8b 73 04             	mov    0x4(%ebx),%esi
46bed7:	eb 4c                	jmp    0x46bf25
46bed9:	8d 4d ec             	lea    -0x14(%ebp),%ecx
46bedc:	51                   	push   %ecx
46bedd:	8d 4d f8             	lea    -0x8(%ebp),%ecx
46bee0:	51                   	push   %ecx
46bee1:	8d 4d f4             	lea    -0xc(%ebp),%ecx
46bee4:	51                   	push   %ecx
46bee5:	57                   	push   %edi
46bee6:	50                   	push   %eax
46bee7:	ff 75 fc             	push   -0x4(%ebp)
46beea:	ff 15 88 fe 4a 00    	call   *0x4afe88
46bef0:	85 c0                	test   %eax,%eax
46bef2:	75 21                	jne    0x46bf15
46bef4:	83 7d f4 04          	cmpl   $0x4,-0xc(%ebp)
46bef8:	75 1b                	jne    0x46bf15
46befa:	39 7d f8             	cmp    %edi,-0x8(%ebp)
46befd:	8b 45 f0             	mov    -0x10(%ebp),%eax
46bf00:	8b 4e 04             	mov    0x4(%esi),%ecx
46bf03:	74 08                	je     0x46bf0d
46bf05:	09 88 9c 00 00 00    	or     %ecx,0x9c(%eax)
46bf0b:	eb 08                	jmp    0x46bf15
46bf0d:	f7 d1                	not    %ecx
46bf0f:	21 88 9c 00 00 00    	and    %ecx,0x9c(%eax)
46bf15:	89 7d f8             	mov    %edi,-0x8(%ebp)
46bf18:	c7 45 ec 04 00 00 00 	movl   $0x4,-0x14(%ebp)
46bf1f:	89 7d f4             	mov    %edi,-0xc(%ebp)
46bf22:	83 c6 08             	add    $0x8,%esi
46bf25:	8b 06                	mov    (%esi),%eax
46bf27:	3b c7                	cmp    %edi,%eax
46bf29:	75 ae                	jne    0x46bed9
46bf2b:	ff 75 fc             	push   -0x4(%ebp)
46bf2e:	ff 15 ac fe 4a 00    	call   *0x4afeac
46bf34:	83 c3 08             	add    $0x8,%ebx
46bf37:	39 3b                	cmp    %edi,(%ebx)
46bf39:	89 7d fc             	mov    %edi,-0x4(%ebp)
46bf3c:	0f 85 7a ff ff ff    	jne    0x46bebc
46bf42:	5e                   	pop    %esi
46bf43:	57                   	push   %edi
46bf44:	ff 15 ac fe 4a 00    	call   *0x4afeac
46bf4a:	33 c0                	xor    %eax,%eax
46bf4c:	5f                   	pop    %edi
46bf4d:	40                   	inc    %eax
46bf4e:	5b                   	pop    %ebx
46bf4f:	c9                   	leave
46bf50:	c3                   	ret
46bf51:	8b 44 24 08          	mov    0x8(%esp),%eax
46bf55:	85 c0                	test   %eax,%eax
46bf57:	74 15                	je     0x46bf6e
46bf59:	8b 89 9c 00 00 00    	mov    0x9c(%ecx),%ecx
46bf5f:	23 4c 24 04          	and    0x4(%esp),%ecx
46bf63:	f7 d9                	neg    %ecx
46bf65:	1b c9                	sbb    %ecx,%ecx
46bf67:	f7 d9                	neg    %ecx
46bf69:	89 08                	mov    %ecx,(%eax)
46bf6b:	33 c0                	xor    %eax,%eax
46bf6d:	40                   	inc    %eax
46bf6e:	c2 08 00             	ret    $0x8
46bf71:	a1 0c a9 4a 00       	mov    0x4aa90c,%eax
46bf76:	33 d2                	xor    %edx,%edx
46bf78:	3b c2                	cmp    %edx,%eax
46bf7a:	56                   	push   %esi
46bf7b:	8b f1                	mov    %ecx,%esi
46bf7d:	74 0e                	je     0x46bf8d
46bf7f:	39 56 54             	cmp    %edx,0x54(%esi)
46bf82:	75 03                	jne    0x46bf87
46bf84:	89 46 54             	mov    %eax,0x54(%esi)
46bf87:	89 15 0c a9 4a 00    	mov    %edx,0x4aa90c
46bf8d:	8b 4e 54             	mov    0x54(%esi),%ecx
46bf90:	3b ca                	cmp    %edx,%ecx
46bf92:	74 08                	je     0x46bf9c
46bf94:	8b 01                	mov    (%ecx),%eax
46bf96:	52                   	push   %edx
46bf97:	ff 50 0c             	call   *0xc(%eax)
46bf9a:	eb 06                	jmp    0x46bfa2
46bf9c:	89 15 8c 75 4a 00    	mov    %edx,0x4a758c
46bfa2:	8b 06                	mov    (%esi),%eax
46bfa4:	8b ce                	mov    %esi,%ecx
46bfa6:	ff 90 b4 00 00 00    	call   *0xb4(%eax)
46bfac:	33 c0                	xor    %eax,%eax
46bfae:	40                   	inc    %eax
46bfaf:	5e                   	pop    %esi
46bfb0:	c3                   	ret
46bfb1:	55                   	push   %ebp
46bfb2:	8b ec                	mov    %esp,%ebp
46bfb4:	81 ec 10 01 00 00    	sub    $0x110,%esp
46bfba:	a1 40 8b 4a 00       	mov    0x4a8b40,%eax
46bfbf:	53                   	push   %ebx
46bfc0:	89 45 fc             	mov    %eax,-0x4(%ebp)
46bfc3:	bb 04 01 00 00       	mov    $0x104,%ebx
46bfc8:	53                   	push   %ebx
46bfc9:	8d 85 f0 fe ff ff    	lea    -0x110(%ebp),%eax
46bfcf:	50                   	push   %eax
46bfd0:	ff 71 40             	push   0x40(%ecx)
46bfd3:	ff 15 f0 02 4b 00    	call   *0x4b02f0
46bfd9:	85 c0                	test   %eax,%eax
46bfdb:	74 4b                	je     0x46c028
46bfdd:	3b c3                	cmp    %ebx,%eax
46bfdf:	74 47                	je     0x46c028
46bfe1:	56                   	push   %esi
46bfe2:	57                   	push   %edi
46bfe3:	8d 85 f0 fe ff ff    	lea    -0x110(%ebp),%eax
46bfe9:	50                   	push   %eax
46bfea:	ff 15 a8 05 4b 00    	call   *0x4b05a8
46bff0:	be bc a6 48 00       	mov    $0x48a6bc,%esi
46bff5:	8d 7d f4             	lea    -0xc(%ebp),%edi
46bff8:	a5                   	movsl  %ds:(%esi),%es:(%edi)
46bff9:	66 a5                	movsw  %ds:(%esi),%es:(%edi)
46bffb:	8b c8                	mov    %eax,%ecx
46bffd:	8d 95 f0 fe ff ff    	lea    -0x110(%ebp),%edx
46c003:	2b ca                	sub    %edx,%ecx
46c005:	a4                   	movsb  %ds:(%esi),%es:(%edi)
46c006:	83 c1 07             	add    $0x7,%ecx
46c009:	3b cb                	cmp    %ebx,%ecx
46c00b:	5f                   	pop    %edi
46c00c:	5e                   	pop    %esi
46c00d:	77 19                	ja     0x46c028
46c00f:	8d 4d f4             	lea    -0xc(%ebp),%ecx
46c012:	51                   	push   %ecx
46c013:	50                   	push   %eax
46c014:	ff 15 04 03 4b 00    	call   *0x4b0304
46c01a:	8d 85 f0 fe ff ff    	lea    -0x110(%ebp),%eax
46c020:	50                   	push   %eax
46c021:	e8 85 fc ff ff       	call   0x46bcab
46c026:	eb 02                	jmp    0x46c02a
46c028:	33 c0                	xor    %eax,%eax
46c02a:	8b 4d fc             	mov    -0x4(%ebp),%ecx
46c02d:	5b                   	pop    %ebx
46c02e:	e8 ab bb fa ff       	call   0x417bde
46c033:	c9                   	leave
46c034:	c3                   	ret
46c035:	b8 a0 29 48 00       	mov    $0x4829a0,%eax
46c03a:	e8 3d bc fa ff       	call   0x417c7c
46c03f:	51                   	push   %ecx
46c040:	56                   	push   %esi
46c041:	57                   	push   %edi
46c042:	8d 45 f0             	lea    -0x10(%ebp),%eax
46c045:	50                   	push   %eax
46c046:	33 ff                	xor    %edi,%edi
46c048:	6a 20                	push   $0x20
46c04a:	8b f1                	mov    %ecx,%esi
46c04c:	89 7d f0             	mov    %edi,-0x10(%ebp)
46c04f:	e8 fd fe ff ff       	call   0x46bf51
46c054:	39 7d 08             	cmp    %edi,0x8(%ebp)
46c057:	74 43                	je     0x46c09c
46c059:	39 7d f0             	cmp    %edi,-0x10(%ebp)
46c05c:	75 3e                	jne    0x46c09c
46c05e:	6a 20                	push   $0x20
46c060:	e8 f0 3f fd ff       	call   0x440055
46c065:	59                   	pop    %ecx
46c066:	8b c8                	mov    %eax,%ecx
46c068:	89 4d f0             	mov    %ecx,-0x10(%ebp)
46c06b:	3b cf                	cmp    %edi,%ecx
46c06d:	89 7d fc             	mov    %edi,-0x4(%ebp)
46c070:	74 17                	je     0x46c089
46c072:	6a 1e                	push   $0x1e
46c074:	ff 75 08             	push   0x8(%ebp)
46c077:	68 dc a4 48 00       	push   $0x48a4dc
46c07c:	68 e4 a4 48 00       	push   $0x48a4e4
46c081:	57                   	push   %edi
46c082:	e8 7c d8 fd ff       	call   0x449903
46c087:	eb 02                	jmp    0x46c08b
46c089:	33 c0                	xor    %eax,%eax
46c08b:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
46c08f:	89 86 84 00 00 00    	mov    %eax,0x84(%esi)
46c095:	8b 10                	mov    (%eax),%edx
46c097:	8b c8                	mov    %eax,%ecx
46c099:	ff 52 10             	call   *0x10(%edx)
46c09c:	57                   	push   %edi
46c09d:	68 c0 a4 48 00       	push   $0x48a4c0
46c0a2:	68 d0 a4 48 00       	push   $0x48a4d0
46c0a7:	8b ce                	mov    %esi,%ecx
46c0a9:	e8 c4 26 00 00       	call   0x46e772
46c0ae:	8b 4d f4             	mov    -0xc(%ebp),%ecx
46c0b1:	89 86 90 00 00 00    	mov    %eax,0x90(%esi)
46c0b7:	5f                   	pop    %edi
46c0b8:	5e                   	pop    %esi
46c0b9:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
46c0c0:	c9                   	leave
46c0c1:	c2 04 00             	ret    $0x4
46c0c4:	33 c0                	xor    %eax,%eax
46c0c6:	40                   	inc    %eax
46c0c7:	39 05 18 c7 4a 00    	cmp    %eax,0x4ac718
46c0cd:	7e 45                	jle    0x46c114
46c0cf:	53                   	push   %ebx
46c0d0:	56                   	push   %esi
46c0d1:	57                   	push   %edi
46c0d2:	8b 7c 24 10          	mov    0x10(%esp),%edi
46c0d6:	8b 0d 1c c7 4a 00    	mov    0x4ac71c,%ecx
46c0dc:	8b 0c 81             	mov    (%ecx,%eax,4),%ecx
46c0df:	8d 70 01             	lea    0x1(%eax),%esi
46c0e2:	8a 01                	mov    (%ecx),%al
46c0e4:	33 db                	xor    %ebx,%ebx
46c0e6:	33 d2                	xor    %edx,%edx
46c0e8:	3b 35 18 c7 4a 00    	cmp    0x4ac718,%esi
46c0ee:	0f 94 c3             	sete   %bl
46c0f1:	3c 2d                	cmp    $0x2d,%al
46c0f3:	74 04                	je     0x46c0f9
46c0f5:	3c 2f                	cmp    $0x2f,%al
46c0f7:	75 04                	jne    0x46c0fd
46c0f9:	33 d2                	xor    %edx,%edx
46c0fb:	42                   	inc    %edx
46c0fc:	41                   	inc    %ecx
46c0fd:	8b 07                	mov    (%edi),%eax
46c0ff:	53                   	push   %ebx
46c100:	52                   	push   %edx
46c101:	51                   	push   %ecx
46c102:	8b cf                	mov    %edi,%ecx
46c104:	ff 50 0c             	call   *0xc(%eax)
46c107:	8b c6                	mov    %esi,%eax
46c109:	3b 05 18 c7 4a 00    	cmp    0x4ac718,%eax
46c10f:	7c c5                	jl     0x46c0d6
46c111:	5f                   	pop    %edi
46c112:	5e                   	pop    %esi
46c113:	5b                   	pop    %ebx
46c114:	c2 04 00             	ret    $0x4
46c117:	53                   	push   %ebx
46c118:	8b 5c 24 08          	mov    0x8(%esp),%ebx
46c11c:	55                   	push   %ebp
46c11d:	8b 2d ec 02 4b 00    	mov    0x4b02ec,%ebp
46c123:	57                   	push   %edi
46c124:	68 14 a7 48 00       	push   $0x48a714
46c129:	53                   	push   %ebx
46c12a:	8b f9                	mov    %ecx,%edi
46c12c:	ff d5                	call   *%ebp
46c12e:	85 c0                	test   %eax,%eax
46c130:	75 0c                	jne    0x46c13e
46c132:	c7 47 10 03 00 00 00 	movl   $0x3,0x10(%edi)
46c139:	e9 b9 00 00 00       	jmp    0x46c1f7
46c13e:	68 10 a7 48 00       	push   $0x48a710
46c143:	53                   	push   %ebx
46c144:	ff d5                	call   *%ebp
46c146:	85 c0                	test   %eax,%eax
46c148:	75 0c                	jne    0x46c156
46c14a:	c7 47 10 02 00 00 00 	movl   $0x2,0x10(%edi)
46c151:	e9 a1 00 00 00       	jmp    0x46c1f7
46c156:	56                   	push   %esi
46c157:	8b 35 94 03 4b 00    	mov    0x4b0394,%esi
46c15d:	68 04 a7 48 00       	push   $0x48a704
46c162:	53                   	push   %ebx
46c163:	ff d6                	call   *%esi
46c165:	85 c0                	test   %eax,%eax
46c167:	0f 84 82 00 00 00    	je     0x46c1ef
46c16d:	68 f8 a6 48 00       	push   $0x48a6f8
46c172:	53                   	push   %ebx
46c173:	ff d6                	call   *%esi
46c175:	85 c0                	test   %eax,%eax
46c177:	74 76                	je     0x46c1ef
46c179:	68 ec a6 48 00       	push   $0x48a6ec
46c17e:	53                   	push   %ebx
46c17f:	ff d6                	call   *%esi
46c181:	85 c0                	test   %eax,%eax
46c183:	74 61                	je     0x46c1e6
46c185:	68 e0 a6 48 00       	push   $0x48a6e0
46c18a:	53                   	push   %ebx
46c18b:	ff d6                	call   *%esi
46c18d:	85 c0                	test   %eax,%eax
46c18f:	74 55                	je     0x46c1e6
46c191:	68 dc a6 48 00       	push   $0x48a6dc
46c196:	53                   	push   %ebx
46c197:	ff d5                	call   *%ebp
46c199:	85 c0                	test   %eax,%eax
46c19b:	75 0f                	jne    0x46c1ac
46c19d:	50                   	push   %eax
46c19e:	e8 d3 3a ff ff       	call   0x45fc76
46c1a3:	c7 47 10 04 00 00 00 	movl   $0x4,0x10(%edi)
46c1aa:	eb 4a                	jmp    0x46c1f6
46c1ac:	68 d0 a6 48 00       	push   $0x48a6d0
46c1b1:	53                   	push   %ebx
46c1b2:	ff d6                	call   *%esi
46c1b4:	85 c0                	test   %eax,%eax