4af9a4:	e8 c5 f7 ff ff       	call   0x4af16e
4af9a9:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
4af9af:	e8 c3 f7 ff ff       	call   0x4af177
4af9b4:	83 20 00             	andl   $0x0,(%eax)
4af9b7:	83 c8 ff             	or     $0xffffffff,%eax
4af9ba:	5e                   	pop    %esi
4af9bb:	c3                   	ret
4af9bc:	56                   	push   %esi
4af9bd:	8b 74 24 08          	mov    0x8(%esp),%esi
4af9c1:	57                   	push   %edi
4af9c2:	56                   	push   %esi
4af9c3:	e8 14 21 00 00       	call   0x4b1adc
4af9c8:	83 f8 ff             	cmp    $0xffffffff,%eax
4af9cb:	59                   	pop    %ecx
4af9cc:	75 0d                	jne    0x4af9db
4af9ce:	e8 9b f7 ff ff       	call   0x4af16e
4af9d3:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
4af9d9:	eb 2d                	jmp    0x4afa08
4af9db:	ff 74 24 14          	push   0x14(%esp)
4af9df:	6a 00                	push   $0x0
4af9e1:	ff 74 24 18          	push   0x18(%esp)
4af9e5:	50                   	push   %eax
4af9e6:	ff 15 fc 30 4b 00    	call   *0x4b30fc
4af9ec:	8b f8                	mov    %eax,%edi
4af9ee:	83 ff ff             	cmp    $0xffffffff,%edi
4af9f1:	75 08                	jne    0x4af9fb
4af9f3:	ff 15 1c 31 4b 00    	call   *0x4b311c
4af9f9:	eb 02                	jmp    0x4af9fd
4af9fb:	33 c0                	xor    %eax,%eax
4af9fd:	85 c0                	test   %eax,%eax
4af9ff:	74 0c                	je     0x4afa0d
4afa01:	50                   	push   %eax
4afa02:	e8 f4 f6 ff ff       	call   0x4af0fb
4afa07:	59                   	pop    %ecx
4afa08:	83 c8 ff             	or     $0xffffffff,%eax
4afa0b:	eb 1f                	jmp    0x4afa2c
4afa0d:	8b ce                	mov    %esi,%ecx
4afa0f:	83 e6 1f             	and    $0x1f,%esi
4afa12:	c1 f9 05             	sar    $0x5,%ecx
4afa15:	8b c6                	mov    %esi,%eax
4afa17:	8b 0c 8d 80 df 51 00 	mov    0x51df80(,%ecx,4),%ecx
4afa1e:	8d 04 c0             	lea    (%eax,%eax,8),%eax
4afa21:	80 64 81 04 fd       	andb   $0xfd,0x4(%ecx,%eax,4)
4afa26:	8d 44 81 04          	lea    0x4(%ecx,%eax,4),%eax
4afa2a:	8b c7                	mov    %edi,%eax
4afa2c:	5f                   	pop    %edi
4afa2d:	5e                   	pop    %esi
4afa2e:	c3                   	ret
4afa2f:	56                   	push   %esi
4afa30:	8b 74 24 08          	mov    0x8(%esp),%esi
4afa34:	3b 35 80 e0 51 00    	cmp    0x51e080,%esi
4afa3a:	73 40                	jae    0x4afa7c
4afa3c:	8b ce                	mov    %esi,%ecx
4afa3e:	8b c6                	mov    %esi,%eax
4afa40:	c1 f9 05             	sar    $0x5,%ecx
4afa43:	83 e0 1f             	and    $0x1f,%eax
4afa46:	8b 0c 8d 80 df 51 00 	mov    0x51df80(,%ecx,4),%ecx
4afa4d:	8d 04 c0             	lea    (%eax,%eax,8),%eax
4afa50:	f6 44 81 04 01       	testb  $0x1,0x4(%ecx,%eax,4)
4afa55:	74 25                	je     0x4afa7c
4afa57:	57                   	push   %edi
4afa58:	56                   	push   %esi
4afa59:	e8 c0 20 00 00       	call   0x4b1b1e
4afa5e:	ff 74 24 18          	push   0x18(%esp)
4afa62:	ff 74 24 18          	push   0x18(%esp)
4afa66:	56                   	push   %esi
4afa67:	e8 28 00 00 00       	call   0x4afa94
4afa6c:	56                   	push   %esi
4afa6d:	8b f8                	mov    %eax,%edi
4afa6f:	e8 09 21 00 00       	call   0x4b1b7d
4afa74:	83 c4 14             	add    $0x14,%esp
4afa77:	8b c7                	mov    %edi,%eax
4afa79:	5f                   	pop    %edi
4afa7a:	5e                   	pop    %esi
4afa7b:	c3                   	ret
4afa7c:	e8 ed f6 ff ff       	call   0x4af16e
4afa81:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
4afa87:	e8 eb f6 ff ff       	call   0x4af177
4afa8c:	83 20 00             	andl   $0x0,(%eax)
4afa8f:	83 c8 ff             	or     $0xffffffff,%eax
4afa92:	5e                   	pop    %esi
4afa93:	c3                   	ret
4afa94:	55                   	push   %ebp
4afa95:	8b ec                	mov    %esp,%ebp
4afa97:	81 ec 14 04 00 00    	sub    $0x414,%esp
4afa9d:	53                   	push   %ebx
4afa9e:	56                   	push   %esi
4afa9f:	57                   	push   %edi
4afaa0:	33 ff                	xor    %edi,%edi
4afaa2:	39 7d 10             	cmp    %edi,0x10(%ebp)
4afaa5:	89 7d f8             	mov    %edi,-0x8(%ebp)
4afaa8:	89 7d f0             	mov    %edi,-0x10(%ebp)
4afaab:	75 07                	jne    0x4afab4
4afaad:	33 c0                	xor    %eax,%eax
4afaaf:	e9 66 01 00 00       	jmp    0x4afc1a
4afab4:	8b 45 08             	mov    0x8(%ebp),%eax
4afab7:	c1 f8 05             	sar    $0x5,%eax
4afaba:	8d 1c 85 80 df 51 00 	lea    0x51df80(,%eax,4),%ebx
4afac1:	8b 45 08             	mov    0x8(%ebp),%eax
4afac4:	83 e0 1f             	and    $0x1f,%eax
4afac7:	8d 34 c0             	lea    (%eax,%eax,8),%esi
4afaca:	8b 03                	mov    (%ebx),%eax
4afacc:	c1 e6 02             	shl    $0x2,%esi
4afacf:	f6 44 30 04 20       	testb  $0x20,0x4(%eax,%esi,1)
4afad4:	74 0e                	je     0x4afae4
4afad6:	6a 02                	push   $0x2
4afad8:	57                   	push   %edi
4afad9:	ff 75 08             	push   0x8(%ebp)
4afadc:	e8 db fe ff ff       	call   0x4af9bc
4afae1:	83 c4 0c             	add    $0xc,%esp
4afae4:	8b 03                	mov    (%ebx),%eax
4afae6:	03 c6                	add    %esi,%eax
4afae8:	f6 40 04 80          	testb  $0x80,0x4(%eax)
4afaec:	0f 84 c1 00 00 00    	je     0x4afbb3
4afaf2:	8b 45 0c             	mov    0xc(%ebp),%eax
4afaf5:	39 7d 10             	cmp    %edi,0x10(%ebp)
4afaf8:	89 45 fc             	mov    %eax,-0x4(%ebp)
4afafb:	89 7d 08             	mov    %edi,0x8(%ebp)
4afafe:	0f 86 ea 00 00 00    	jbe    0x4afbee
4afb04:	8d 85 ec fb ff ff    	lea    -0x414(%ebp),%eax
4afb0a:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4afb0d:	2b 4d 0c             	sub    0xc(%ebp),%ecx
4afb10:	3b 4d 10             	cmp    0x10(%ebp),%ecx
4afb13:	73 29                	jae    0x4afb3e
4afb15:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4afb18:	ff 45 fc             	incl   -0x4(%ebp)
4afb1b:	8a 09                	mov    (%ecx),%cl
4afb1d:	80 f9 0a             	cmp    $0xa,%cl
4afb20:	75 07                	jne    0x4afb29
4afb22:	ff 45 f0             	incl   -0x10(%ebp)
4afb25:	c6 00 0d             	movb   $0xd,(%eax)
4afb28:	40                   	inc    %eax
4afb29:	88 08                	mov    %cl,(%eax)
4afb2b:	40                   	inc    %eax
4afb2c:	8b c8                	mov    %eax,%ecx
4afb2e:	8d 95 ec fb ff ff    	lea    -0x414(%ebp),%edx
4afb34:	2b ca                	sub    %edx,%ecx
4afb36:	81 f9 00 04 00 00    	cmp    $0x400,%ecx
4afb3c:	7c cc                	jl     0x4afb0a
4afb3e:	8b f8                	mov    %eax,%edi
4afb40:	8d 85 ec fb ff ff    	lea    -0x414(%ebp),%eax
4afb46:	2b f8                	sub    %eax,%edi
4afb48:	8d 45 f4             	lea    -0xc(%ebp),%eax
4afb4b:	6a 00                	push   $0x0
4afb4d:	50                   	push   %eax
4afb4e:	8d 85 ec fb ff ff    	lea    -0x414(%ebp),%eax
4afb54:	57                   	push   %edi
4afb55:	50                   	push   %eax
4afb56:	8b 03                	mov    (%ebx),%eax
4afb58:	ff 34 30             	push   (%eax,%esi,1)
4afb5b:	ff 15 08 31 4b 00    	call   *0x4b3108
4afb61:	85 c0                	test   %eax,%eax
4afb63:	74 43                	je     0x4afba8
4afb65:	8b 45 f4             	mov    -0xc(%ebp),%eax
4afb68:	01 45 f8             	add    %eax,-0x8(%ebp)
4afb6b:	3b c7                	cmp    %edi,%eax
4afb6d:	7c 0b                	jl     0x4afb7a
4afb6f:	8b 45 fc             	mov    -0x4(%ebp),%eax
4afb72:	2b 45 0c             	sub    0xc(%ebp),%eax
4afb75:	3b 45 10             	cmp    0x10(%ebp),%eax
4afb78:	72 8a                	jb     0x4afb04
4afb7a:	33 ff                	xor    %edi,%edi
4afb7c:	8b 45 f8             	mov    -0x8(%ebp),%eax
4afb7f:	3b c7                	cmp    %edi,%eax
4afb81:	0f 85 90 00 00 00    	jne    0x4afc17
4afb87:	39 7d 08             	cmp    %edi,0x8(%ebp)
4afb8a:	74 62                	je     0x4afbee
4afb8c:	6a 05                	push   $0x5
4afb8e:	5e                   	pop    %esi
4afb8f:	39 75 08             	cmp    %esi,0x8(%ebp)
4afb92:	75 4c                	jne    0x4afbe0
4afb94:	e8 d5 f5 ff ff       	call   0x4af16e
4afb99:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
4afb9f:	e8 d3 f5 ff ff       	call   0x4af177
4afba4:	89 30                	mov    %esi,(%eax)
4afba6:	eb 41                	jmp    0x4afbe9
4afba8:	ff 15 1c 31 4b 00    	call   *0x4b311c
4afbae:	89 45 08             	mov    %eax,0x8(%ebp)
4afbb1:	eb c7                	jmp    0x4afb7a
4afbb3:	8d 4d f4             	lea    -0xc(%ebp),%ecx
4afbb6:	57                   	push   %edi
4afbb7:	51                   	push   %ecx
4afbb8:	ff 75 10             	push   0x10(%ebp)
4afbbb:	ff 75 0c             	push   0xc(%ebp)
4afbbe:	ff 30                	push   (%eax)
4afbc0:	ff 15 08 31 4b 00    	call   *0x4b3108
4afbc6:	85 c0                	test   %eax,%eax
4afbc8:	74 0b                	je     0x4afbd5
4afbca:	8b 45 f4             	mov    -0xc(%ebp),%eax
4afbcd:	89 7d 08             	mov    %edi,0x8(%ebp)
4afbd0:	89 45 f8             	mov    %eax,-0x8(%ebp)
4afbd3:	eb a7                	jmp    0x4afb7c
4afbd5:	ff 15 1c 31 4b 00    	call   *0x4b311c
4afbdb:	89 45 08             	mov    %eax,0x8(%ebp)
4afbde:	eb 9c                	jmp    0x4afb7c
4afbe0:	ff 75 08             	push   0x8(%ebp)
4afbe3:	e8 13 f5 ff ff       	call   0x4af0fb
4afbe8:	59                   	pop    %ecx
4afbe9:	83 c8 ff             	or     $0xffffffff,%eax
4afbec:	eb 2c                	jmp    0x4afc1a
4afbee:	8b 03                	mov    (%ebx),%eax
4afbf0:	f6 44 30 04 40       	testb  $0x40,0x4(%eax,%esi,1)
4afbf5:	74 0c                	je     0x4afc03
4afbf7:	8b 45 0c             	mov    0xc(%ebp),%eax
4afbfa:	80 38 1a             	cmpb   $0x1a,(%eax)
4afbfd:	0f 84 aa fe ff ff    	je     0x4afaad
4afc03:	e8 66 f5 ff ff       	call   0x4af16e
4afc08:	c7 00 1c 00 00 00    	movl   $0x1c,(%eax)
4afc0e:	e8 64 f5 ff ff       	call   0x4af177
4afc13:	89 38                	mov    %edi,(%eax)
4afc15:	eb d2                	jmp    0x4afbe9
4afc17:	2b 45 f0             	sub    -0x10(%ebp),%eax
4afc1a:	5f                   	pop    %edi
4afc1b:	5e                   	pop    %esi
4afc1c:	5b                   	pop    %ebx
4afc1d:	c9                   	leave
4afc1e:	c3                   	ret
4afc1f:	55                   	push   %ebp
4afc20:	8b ec                	mov    %esp,%ebp
4afc22:	6a ff                	push   $0xffffffff
4afc24:	68 b8 3b 4b 00       	push   $0x4b3bb8
4afc29:	68 80 97 4a 00       	push   $0x4a9780
4afc2e:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
4afc34:	50                   	push   %eax
4afc35:	64 89 25 00 00 00 00 	mov    %esp,%fs:0x0
4afc3c:	83 ec 1c             	sub    $0x1c,%esp
4afc3f:	53                   	push   %ebx
4afc40:	56                   	push   %esi
4afc41:	57                   	push   %edi
4afc42:	89 65 e8             	mov    %esp,-0x18(%ebp)
4afc45:	33 ff                	xor    %edi,%edi
4afc47:	39 3d 80 cb 51 00    	cmp    %edi,0x51cb80
4afc4d:	75 46                	jne    0x4afc95
4afc4f:	57                   	push   %edi
4afc50:	57                   	push   %edi
4afc51:	6a 01                	push   $0x1
4afc53:	5b                   	pop    %ebx
4afc54:	53                   	push   %ebx
4afc55:	68 b4 3b 4b 00       	push   $0x4b3bb4
4afc5a:	be 00 01 00 00       	mov    $0x100,%esi
4afc5f:	56                   	push   %esi
4afc60:	57                   	push   %edi
4afc61:	ff 15 f8 30 4b 00    	call   *0x4b30f8
4afc67:	85 c0                	test   %eax,%eax
4afc69:	74 08                	je     0x4afc73
4afc6b:	89 1d 80 cb 51 00    	mov    %ebx,0x51cb80
4afc71:	eb 22                	jmp    0x4afc95
4afc73:	57                   	push   %edi
4afc74:	57                   	push   %edi
4afc75:	53                   	push   %ebx
4afc76:	68 b0 3b 4b 00       	push   $0x4b3bb0
4afc7b:	56                   	push   %esi
4afc7c:	57                   	push   %edi
4afc7d:	ff 15 cc 30 4b 00    	call   *0x4b30cc
4afc83:	85 c0                	test   %eax,%eax
4afc85:	0f 84 22 01 00 00    	je     0x4afdad
4afc8b:	c7 05 80 cb 51 00 02 	movl   $0x2,0x51cb80
4afc92:	00 00 00
4afc95:	39 7d 14             	cmp    %edi,0x14(%ebp)
4afc98:	7e 10                	jle    0x4afcaa
4afc9a:	ff 75 14             	push   0x14(%ebp)
4afc9d:	ff 75 10             	push   0x10(%ebp)
4afca0:	e8 9e 01 00 00       	call   0x4afe43
4afca5:	59                   	pop    %ecx
4afca6:	59                   	pop    %ecx
4afca7:	89 45 14             	mov    %eax,0x14(%ebp)
4afcaa:	a1 80 cb 51 00       	mov    0x51cb80,%eax
4afcaf:	83 f8 02             	cmp    $0x2,%eax
4afcb2:	75 1d                	jne    0x4afcd1
4afcb4:	ff 75 1c             	push   0x1c(%ebp)
4afcb7:	ff 75 18             	push   0x18(%ebp)
4afcba:	ff 75 14             	push   0x14(%ebp)
4afcbd:	ff 75 10             	push   0x10(%ebp)
4afcc0:	ff 75 0c             	push   0xc(%ebp)
4afcc3:	ff 75 08             	push   0x8(%ebp)
4afcc6:	ff 15 cc 30 4b 00    	call   *0x4b30cc
4afccc:	e9 de 00 00 00       	jmp    0x4afdaf
4afcd1:	83 f8 01             	cmp    $0x1,%eax
4afcd4:	0f 85 d3 00 00 00    	jne    0x4afdad
4afcda:	39 7d 20             	cmp    %edi,0x20(%ebp)
4afcdd:	75 08                	jne    0x4afce7
4afcdf:	a1 78 cb 51 00       	mov    0x51cb78,%eax
4afce4:	89 45 20             	mov    %eax,0x20(%ebp)
4afce7:	57                   	push   %edi
4afce8:	57                   	push   %edi
4afce9:	ff 75 14             	push   0x14(%ebp)
4afcec:	ff 75 10             	push   0x10(%ebp)
4afcef:	8b 45 24             	mov    0x24(%ebp),%eax
4afcf2:	f7 d8                	neg    %eax
4afcf4:	1b c0                	sbb    %eax,%eax
4afcf6:	83 e0 08             	and    $0x8,%eax
4afcf9:	40                   	inc    %eax
4afcfa:	50                   	push   %eax
4afcfb:	ff 75 20             	push   0x20(%ebp)
4afcfe:	ff 15 a4 31 4b 00    	call   *0x4b31a4
4afd04:	8b d8                	mov    %eax,%ebx
4afd06:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
4afd09:	3b df                	cmp    %edi,%ebx
4afd0b:	0f 84 9c 00 00 00    	je     0x4afdad
4afd11:	89 7d fc             	mov    %edi,-0x4(%ebp)
4afd14:	8d 04 1b             	lea    (%ebx,%ebx,1),%eax
4afd17:	83 c0 03             	add    $0x3,%eax
4afd1a:	24 fc                	and    $0xfc,%al
4afd1c:	e8 5f 0a 00 00       	call   0x4b0780
4afd21:	89 65 e8             	mov    %esp,-0x18(%ebp)
4afd24:	8b c4                	mov    %esp,%eax
4afd26:	89 45 dc             	mov    %eax,-0x24(%ebp)
4afd29:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
4afd2d:	eb 13                	jmp    0x4afd42
4afd2f:	6a 01                	push   $0x1
4afd31:	58                   	pop    %eax
4afd32:	c3                   	ret
4afd33:	8b 65 e8             	mov    -0x18(%ebp),%esp
4afd36:	33 ff                	xor    %edi,%edi
4afd38:	89 7d dc             	mov    %edi,-0x24(%ebp)
4afd3b:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
4afd3f:	8b 5d e4             	mov    -0x1c(%ebp),%ebx
4afd42:	39 7d dc             	cmp    %edi,-0x24(%ebp)
4afd45:	74 66                	je     0x4afdad
4afd47:	53                   	push   %ebx
4afd48:	ff 75 dc             	push   -0x24(%ebp)
4afd4b:	ff 75 14             	push   0x14(%ebp)
4afd4e:	ff 75 10             	push   0x10(%ebp)
4afd51:	6a 01                	push   $0x1
4afd53:	ff 75 20             	push   0x20(%ebp)
4afd56:	ff 15 a4 31 4b 00    	call   *0x4b31a4
4afd5c:	85 c0                	test   %eax,%eax
4afd5e:	74 4d                	je     0x4afdad
4afd60:	57                   	push   %edi
4afd61:	57                   	push   %edi
4afd62:	53                   	push   %ebx
4afd63:	ff 75 dc             	push   -0x24(%ebp)
4afd66:	ff 75 0c             	push   0xc(%ebp)
4afd69:	ff 75 08             	push   0x8(%ebp)
4afd6c:	ff 15 f8 30 4b 00    	call   *0x4b30f8
4afd72:	8b f0                	mov    %eax,%esi
4afd74:	89 75 d8             	mov    %esi,-0x28(%ebp)
4afd77:	3b f7                	cmp    %edi,%esi
4afd79:	74 32                	je     0x4afdad
4afd7b:	f6 45 0d 04          	testb  $0x4,0xd(%ebp)
4afd7f:	74 40                	je     0x4afdc1
4afd81:	39 7d 1c             	cmp    %edi,0x1c(%ebp)
4afd84:	0f 84 b2 00 00 00    	je     0x4afe3c
4afd8a:	3b 75 1c             	cmp    0x1c(%ebp),%esi
4afd8d:	7f 1e                	jg     0x4afdad
4afd8f:	ff 75 1c             	push   0x1c(%ebp)
4afd92:	ff 75 18             	push   0x18(%ebp)
4afd95:	53                   	push   %ebx
4afd96:	ff 75 dc             	push   -0x24(%ebp)
4afd99:	ff 75 0c             	push   0xc(%ebp)