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
46abe1:	0f 90 c1             	seto   %cl
46abe4:	f7 d9                	neg    %ecx
46abe6:	0b c8                	or     %eax,%ecx
46abe8:	51                   	push   %ecx
46abe9:	e8 fc 48 fb ff       	call   0x41f4ea
46abee:	59                   	pop    %ecx
46abef:	8b f0                	mov    %eax,%esi
46abf1:	56                   	push   %esi
46abf2:	53                   	push   %ebx
46abf3:	68 48 01 00 00       	push   $0x148
46abf8:	eb aa                	jmp    0x46aba4
46abfa:	33 ff                	xor    %edi,%edi
46abfc:	57                   	push   %edi
46abfd:	57                   	push   %edi
46abfe:	8b 3d 70 d6 48 00    	mov    0x48d670,%edi
46ac04:	68 0b 13 00 00       	push   $0x130b
46ac09:	56                   	push   %esi
46ac0a:	ff d7                	call   *%edi
46ac0c:	80 7d 10 00          	cmpb   $0x0,0x10(%ebp)
46ac10:	89 03                	mov    %eax,(%ebx)
46ac12:	0f 84 bd 05 00 00    	je     0x46b1d5
46ac18:	8d 8d 6c ff ff ff    	lea    -0x94(%ebp),%ecx
46ac1e:	51                   	push   %ecx
46ac1f:	50                   	push   %eax
46ac20:	68 3c 13 00 00       	push   $0x133c
46ac25:	56                   	push   %esi
46ac26:	c7 85 6c ff ff ff 08 	movl   $0x8,-0x94(%ebp)
46ac2d:	00 00 00
46ac30:	ff d7                	call   *%edi
46ac32:	8b 45 84             	mov    -0x7c(%ebp),%eax
46ac35:	e9 99 05 00 00       	jmp    0x46b1d3
46ac3a:	83 f8 0c             	cmp    $0xc,%eax
46ac3d:	0f 84 97 01 00 00    	je     0x46adda
46ac43:	83 f8 0d             	cmp    $0xd,%eax
46ac46:	0f 8e 3d 03 00 00    	jle    0x46af89
46ac4c:	83 f8 0f             	cmp    $0xf,%eax
46ac4f:	0f 8e 9b 00 00 00    	jle    0x46acf0
46ac55:	83 f8 10             	cmp    $0x10,%eax
46ac58:	0f 85 2b 03 00 00    	jne    0x46af89
46ac5e:	33 ff                	xor    %edi,%edi
46ac60:	57                   	push   %edi
46ac61:	6a 09                	push   $0x9
46ac63:	68 0a 11 00 00       	push   $0x110a
46ac68:	56                   	push   %esi
46ac69:	89 3b                	mov    %edi,(%ebx)
46ac6b:	ff 15 70 d6 48 00    	call   *0x48d670
46ac71:	85 c0                	test   %eax,%eax
46ac73:	0f 84 5c 05 00 00    	je     0x46b1d5
46ac79:	80 7d 10 00          	cmpb   $0x0,0x10(%ebp)
46ac7d:	89 45 d4             	mov    %eax,-0x2c(%ebp)
46ac80:	c7 45 d0 04 00 00 00 	movl   $0x4,-0x30(%ebp)
46ac87:	74 46                	je     0x46accf
46ac89:	68 00 20 00 00       	push   $0x2000
46ac8e:	e8 57 48 fb ff       	call   0x41f4ea
46ac93:	59                   	pop    %ecx
46ac94:	8b d8                	mov    %eax,%ebx
46ac96:	8d 45 d0             	lea    -0x30(%ebp),%eax
46ac99:	50                   	push   %eax
46ac9a:	57                   	push   %edi
46ac9b:	68 3e 11 00 00       	push   $0x113e
46aca0:	56                   	push   %esi
46aca1:	c7 45 e4 ff 0f 00 00 	movl   $0xfff,-0x1c(%ebp)
46aca8:	89 5d e0             	mov    %ebx,-0x20(%ebp)
46acab:	c7 45 d0 01 00 00 00 	movl   $0x1,-0x30(%ebp)
46acb2:	ff 15 70 d6 48 00    	call   *0x48d670
46acb8:	85 c0                	test   %eax,%eax
46acba:	74 07                	je     0x46acc3
46acbc:	8b c3                	mov    %ebx,%eax
46acbe:	e9 14 05 00 00       	jmp    0x46b1d7
46acc3:	53                   	push   %ebx
46acc4:	e8 95 48 fb ff       	call   0x41f55e
46acc9:	59                   	pop    %ecx
46acca:	e9 06 05 00 00       	jmp    0x46b1d5
46accf:	8d 45 d0             	lea    -0x30(%ebp),%eax
46acd2:	50                   	push   %eax
46acd3:	57                   	push   %edi
46acd4:	68 3e 11 00 00       	push   $0x113e
46acd9:	56                   	push   %esi
46acda:	ff 15 70 d6 48 00    	call   *0x48d670
46ace0:	85 c0                	test   %eax,%eax
46ace2:	0f 84 ed 04 00 00    	je     0x46b1d5
46ace8:	8b 45 f4             	mov    -0xc(%ebp),%eax
46aceb:	e9 e3 04 00 00       	jmp    0x46b1d3
46acf0:	ff 71 0c             	push   0xc(%ecx)
46acf3:	ff 15 9c d5 48 00    	call   *0x48d59c
46acf9:	85 c0                	test   %eax,%eax
46acfb:	0f 84 d4 04 00 00    	je     0x46b1d5
46ad01:	68 08 02 00 00       	push   $0x208
46ad06:	e8 df 47 fb ff       	call   0x41f4ea
46ad0b:	80 7d 10 00          	cmpb   $0x0,0x10(%ebp)
46ad0f:	8b 75 f8             	mov    -0x8(%ebp),%esi
46ad12:	8b f8                	mov    %eax,%edi
46ad14:	59                   	pop    %ecx
46ad15:	8d 85 3c ff ff ff    	lea    -0xc4(%ebp),%eax
46ad1b:	89 7d 0c             	mov    %edi,0xc(%ebp)
46ad1e:	c7 85 3c ff ff ff 30 	movl   $0x30,-0xc4(%ebp)
46ad25:	00 00 00
46ad28:	50                   	push   %eax
46ad29:	74 3f                	je     0x46ad6a
46ad2b:	89 bd 60 ff ff ff    	mov    %edi,-0xa0(%ebp)
46ad31:	33 ff                	xor    %edi,%edi
46ad33:	57                   	push   %edi
46ad34:	ff 75 08             	push   0x8(%ebp)
46ad37:	c7 85 40 ff ff ff 10 	movl   $0x10,-0xc0(%ebp)
46ad3e:	00 00 00
46ad41:	ff 76 0c             	push   0xc(%esi)
46ad44:	c7 85 64 ff ff ff 04 	movl   $0x104,-0x9c(%ebp)
46ad4b:	01 00 00
46ad4e:	ff 15 bc d5 48 00    	call   *0x48d5bc
46ad54:	85 c0                	test   %eax,%eax
46ad56:	75 0a                	jne    0x46ad62
46ad58:	ff 75 0c             	push   0xc(%ebp)
46ad5b:	89 3b                	mov    %edi,(%ebx)
46ad5d:	e9 62 ff ff ff       	jmp    0x46acc4
46ad62:	8b 45 0c             	mov    0xc(%ebp),%eax
46ad65:	e9 6d 04 00 00       	jmp    0x46b1d7
46ad6a:	6a 00                	push   $0x0
46ad6c:	ff 75 08             	push   0x8(%ebp)
46ad6f:	c7 85 40 ff ff ff 01 	movl   $0x1,-0xc0(%ebp)
46ad76:	00 00 00
46ad79:	ff 76 0c             	push   0xc(%esi)
46ad7c:	ff 15 bc d5 48 00    	call   *0x48d5bc
46ad82:	57                   	push   %edi
46ad83:	85 c0                	test   %eax,%eax
46ad85:	0f 84 39 ff ff ff    	je     0x46acc4
46ad8b:	e8 ce 47 fb ff       	call   0x41f55e
46ad90:	59                   	pop    %ecx
46ad91:	8b 8d 48 ff ff ff    	mov    -0xb8(%ebp),%ecx
46ad97:	8a c1                	mov    %cl,%al
46ad99:	24 03                	and    $0x3,%al
46ad9b:	0f be c0             	movsbl %al,%eax
46ad9e:	f7 d8                	neg    %eax
46ada0:	1b c0                	sbb    %eax,%eax
46ada2:	83 e0 40             	and    $0x40,%eax
46ada5:	83 c0 40             	add    $0x40,%eax
46ada8:	89 0b                	mov    %ecx,(%ebx)
46adaa:	f7 c1 80 80 00 00    	test   $0x8080,%ecx
46adb0:	74 05                	je     0x46adb7
46adb2:	0d 00 01 00 00       	or     $0x100,%eax
46adb7:	f6 c1 08             	test   $0x8,%cl
46adba:	74 05                	je     0x46adc1
46adbc:	83 c8 01             	or     $0x1,%eax
46adbf:	eb 03                	jmp    0x46adc4
46adc1:	83 c8 04             	or     $0x4,%eax
46adc4:	f7 c1 00 10 00 00    	test   $0x1000,%ecx
46adca:	0f 84 03 04 00 00    	je     0x46b1d3
46add0:	0d 00 02 00 00       	or     $0x200,%eax
46add5:	e9 f9 03 00 00       	jmp    0x46b1d3
46adda:	21 3b                	and    %edi,(%ebx)
46addc:	e9 f4 03 00 00       	jmp    0x46b1d5
46ade1:	8b 41 10             	mov    0x10(%ecx),%eax
46ade4:	6a f0                	push   $0xfffffff0
46ade6:	ff 71 34             	push   0x34(%ecx)
46ade9:	33 ff                	xor    %edi,%edi
46adeb:	89 45 d4             	mov    %eax,-0x2c(%ebp)
46adee:	89 3b                	mov    %edi,(%ebx)
46adf0:	ff 15 44 d6 48 00    	call   *0x48d644
46adf6:	80 7d 10 00          	cmpb   $0x0,0x10(%ebp)
46adfa:	89 45 08             	mov    %eax,0x8(%ebp)
46adfd:	c7 45 d0 08 00 00 00 	movl   $0x8,-0x30(%ebp)
46ae04:	c7 45 dc 00 f0 00 00 	movl   $0xf000,-0x24(%ebp)
46ae0b:	74 22                	je     0x46ae2f
46ae0d:	68 00 20 00 00       	push   $0x2000
46ae12:	e8 d3 46 fb ff       	call   0x41f4ea
46ae17:	8b 75 f8             	mov    -0x8(%ebp),%esi
46ae1a:	59                   	pop    %ecx
46ae1b:	8b d8                	mov    %eax,%ebx
46ae1d:	8d 45 d0             	lea    -0x30(%ebp),%eax
46ae20:	50                   	push   %eax
46ae21:	57                   	push   %edi
46ae22:	68 3e 11 00 00       	push   $0x113e
46ae27:	ff 76 34             	push   0x34(%esi)
46ae2a:	e9 72 fe ff ff       	jmp    0x46aca1
46ae2f:	8b 75 f8             	mov    -0x8(%ebp),%esi
46ae32:	8d 45 d0             	lea    -0x30(%ebp),%eax