423b79:	79 08                	jns    0x423b83
423b7b:	83 c8 ff             	or     $0xffffffff,%eax
423b7e:	e9 d4 02 00 00       	jmp    0x423e57
423b83:	8b d6                	mov    %esi,%edx
423b85:	c1 fa 05             	sar    $0x5,%edx
423b88:	89 95 f0 ef ff ff    	mov    %edx,-0x1010(%ebp)
423b8e:	8b 14 95 40 09 4c 00 	mov    0x4c0940(,%edx,4),%edx
423b95:	8b c6                	mov    %esi,%eax
423b97:	83 e0 1f             	and    $0x1f,%eax
423b9a:	c1 e0 06             	shl    $0x6,%eax
423b9d:	89 85 e4 ef ff ff    	mov    %eax,-0x101c(%ebp)
423ba3:	8a 54 10 24          	mov    0x24(%eax,%edx,1),%dl
423ba7:	02 d2                	add    %dl,%dl
423ba9:	d0 fa                	sar    $1,%dl
423bab:	f7 43 0c 08 01 00 00 	testl  $0x108,0xc(%ebx)
423bb2:	88 95 f7 ef ff ff    	mov    %dl,-0x1009(%ebp)
423bb8:	75 0a                	jne    0x423bc4
423bba:	2b 4b 04             	sub    0x4(%ebx),%ecx
423bbd:	8b c1                	mov    %ecx,%eax
423bbf:	e9 93 02 00 00       	jmp    0x423e57
423bc4:	8b 33                	mov    (%ebx),%esi
423bc6:	57                   	push   %edi
423bc7:	8b fe                	mov    %esi,%edi
423bc9:	2b 7b 08             	sub    0x8(%ebx),%edi
423bcc:	f6 43 0c 03          	testb  $0x3,0xc(%ebx)
423bd0:	89 bd ec ef ff ff    	mov    %edi,-0x1014(%ebp)
423bd6:	0f 84 7a 01 00 00    	je     0x423d56
423bdc:	80 fa 01             	cmp    $0x1,%dl
423bdf:	0f 85 1c 01 00 00    	jne    0x423d01
423be5:	8b bd f0 ef ff ff    	mov    -0x1010(%ebp),%edi
423beb:	8b 0c bd 40 09 4c 00 	mov    0x4c0940(,%edi,4),%ecx
423bf2:	8b bd ec ef ff ff    	mov    -0x1014(%ebp),%edi
423bf8:	83 7c 08 30 00       	cmpl   $0x0,0x30(%eax,%ecx,1)
423bfd:	8b 8d f8 ef ff ff    	mov    -0x1008(%ebp),%ecx
423c03:	0f 84 f8 00 00 00    	je     0x423d01
423c09:	d1 ef                	shr    $1,%edi
423c0b:	83 7b 04 00          	cmpl   $0x0,0x4(%ebx)
423c0f:	75 07                	jne    0x423c18
423c11:	8b c1                	mov    %ecx,%eax
423c13:	e9 3e 02 00 00       	jmp    0x423e56
423c18:	8b 95 f0 ef ff ff    	mov    -0x1010(%ebp),%edx
423c1e:	8b 9d e8 ef ff ff    	mov    -0x1018(%ebp),%ebx
423c24:	8b 0c 95 40 09 4c 00 	mov    0x4c0940(,%edx,4),%ecx
423c2b:	6a 00                	push   $0x0
423c2d:	ff 74 08 2c          	push   0x2c(%eax,%ecx,1)
423c31:	ff 74 08 28          	push   0x28(%eax,%ecx,1)
423c35:	53                   	push   %ebx
423c36:	e8 f8 ba 00 00       	call   0x42f733
423c3b:	8b 8d e4 ef ff ff    	mov    -0x101c(%ebp),%ecx
423c41:	8b f0                	mov    %eax,%esi
423c43:	8b 85 f0 ef ff ff    	mov    -0x1010(%ebp),%eax
423c49:	83 c4 10             	add    $0x10,%esp
423c4c:	8b 04 85 40 09 4c 00 	mov    0x4c0940(,%eax,4),%eax
423c53:	3b 74 01 28          	cmp    0x28(%ecx,%eax,1),%esi
423c57:	0f 85 9d 01 00 00    	jne    0x423dfa
423c5d:	3b 54 01 2c          	cmp    0x2c(%ecx,%eax,1),%edx
423c61:	0f 85 93 01 00 00    	jne    0x423dfa
423c67:	6a 00                	push   $0x0
423c69:	8d 95 ec ef ff ff    	lea    -0x1014(%ebp),%edx
423c6f:	52                   	push   %edx
423c70:	68 00 10 00 00       	push   $0x1000
423c75:	8d 95 fc ef ff ff    	lea    -0x1004(%ebp),%edx
423c7b:	52                   	push   %edx
423c7c:	ff 34 01             	push   (%ecx,%eax,1)
423c7f:	ff 15 cc d1 48 00    	call   *0x48d1cc
423c85:	85 c0                	test   %eax,%eax
423c87:	0f 84 6d 01 00 00    	je     0x423dfa
423c8d:	6a 00                	push   $0x0
423c8f:	ff b5 f8 ef ff ff    	push   -0x1008(%ebp)
423c95:	53                   	push   %ebx
423c96:	e8 44 b9 00 00       	call   0x42f5df
423c9b:	83 c4 0c             	add    $0xc,%esp
423c9e:	85 c0                	test   %eax,%eax
423ca0:	0f 88 54 01 00 00    	js     0x423dfa
423ca6:	8b 85 ec ef ff ff    	mov    -0x1014(%ebp),%eax
423cac:	3b f8                	cmp    %eax,%edi
423cae:	0f 87 46 01 00 00    	ja     0x423dfa
423cb4:	8d 8d fc ef ff ff    	lea    -0x1004(%ebp),%ecx
423cba:	85 ff                	test   %edi,%edi
423cbc:	74 33                	je     0x423cf1
423cbe:	8b d1                	mov    %ecx,%edx
423cc0:	03 d0                	add    %eax,%edx
423cc2:	4f                   	dec    %edi
423cc3:	3b ca                	cmp    %edx,%ecx
423cc5:	73 2a                	jae    0x423cf1
423cc7:	8a 01                	mov    (%ecx),%al
423cc9:	3c 0d                	cmp    $0xd,%al
423ccb:	75 13                	jne    0x423ce0
423ccd:	8d 42 ff             	lea    -0x1(%edx),%eax
423cd0:	3b c8                	cmp    %eax,%ecx
423cd2:	73 18                	jae    0x423cec
423cd4:	8d 41 01             	lea    0x1(%ecx),%eax
423cd7:	80 38 0a             	cmpb   $0xa,(%eax)
423cda:	75 10                	jne    0x423cec
423cdc:	8b c8                	mov    %eax,%ecx
423cde:	eb 0c                	jmp    0x423cec
423ce0:	0f b6 c0             	movzbl %al,%eax
423ce3:	0f be 80 50 af 4b 00 	movsbl 0x4baf50(%eax),%eax
423cea:	03 c8                	add    %eax,%ecx
423cec:	41                   	inc    %ecx
423ced:	85 ff                	test   %edi,%edi
423cef:	75 d1                	jne    0x423cc2
423cf1:	8d 85 fc ef ff ff    	lea    -0x1004(%ebp),%eax
423cf7:	2b f0                	sub    %eax,%esi
423cf9:	8d 04 31             	lea    (%ecx,%esi,1),%eax
423cfc:	e9 55 01 00 00       	jmp    0x423e56
423d01:	8b bd f0 ef ff ff    	mov    -0x1010(%ebp),%edi
423d07:	8b 0c bd 40 09 4c 00 	mov    0x4c0940(,%edi,4),%ecx
423d0e:	8b bd ec ef ff ff    	mov    -0x1014(%ebp),%edi
423d14:	f6 44 08 04 80       	testb  $0x80,0x4(%eax,%ecx,1)
423d19:	8b 8d f8 ef ff ff    	mov    -0x1008(%ebp),%ecx
423d1f:	74 2a                	je     0x423d4b
423d21:	8b 4b 08             	mov    0x8(%ebx),%ecx
423d24:	89 8d ec ef ff ff    	mov    %ecx,-0x1014(%ebp)
423d2a:	3b ce                	cmp    %esi,%ecx
423d2c:	8b 8d f8 ef ff ff    	mov    -0x1008(%ebp),%ecx
423d32:	73 17                	jae    0x423d4b
423d34:	8b 85 ec ef ff ff    	mov    -0x1014(%ebp),%eax
423d3a:	80 38 0a             	cmpb   $0xa,(%eax)
423d3d:	75 01                	jne    0x423d40
423d3f:	47                   	inc    %edi
423d40:	40                   	inc    %eax
423d41:	3b c6                	cmp    %esi,%eax
423d43:	72 f5                	jb     0x423d3a
423d45:	8b 85 e4 ef ff ff    	mov    -0x101c(%ebp),%eax
423d4b:	85 c9                	test   %ecx,%ecx
423d4d:	75 1d                	jne    0x423d6c
423d4f:	8b c7                	mov    %edi,%eax
423d51:	e9 00 01 00 00       	jmp    0x423e56
423d56:	f6 43 0c 80          	testb  $0x80,0xc(%ebx)
423d5a:	75 ef                	jne    0x423d4b
423d5c:	e8 ad 3e 00 00       	call   0x427c0e
423d61:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
423d67:	e9 8e 00 00 00       	jmp    0x423dfa
423d6c:	f6 43 0c 01          	testb  $0x1,0xc(%ebx)
423d70:	0f 84 d6 00 00 00    	je     0x423e4c
423d76:	83 7b 04 00          	cmpl   $0x0,0x4(%ebx)
423d7a:	75 07                	jne    0x423d83
423d7c:	33 ff                	xor    %edi,%edi
423d7e:	e9 c9 00 00 00       	jmp    0x423e4c
423d83:	2b 73 08             	sub    0x8(%ebx),%esi
423d86:	03 73 04             	add    0x4(%ebx),%esi
423d89:	8b 9d f0 ef ff ff    	mov    -0x1010(%ebp),%ebx
423d8f:	8b 0c 9d 40 09 4c 00 	mov    0x4c0940(,%ebx,4),%ecx
423d96:	8b 9d e0 ef ff ff    	mov    -0x1020(%ebp),%ebx
423d9c:	f6 44 08 04 80       	testb  $0x80,0x4(%eax,%ecx,1)
423da1:	8b 8d f8 ef ff ff    	mov    -0x1008(%ebp),%ecx
423da7:	0f 84 9d 00 00 00    	je     0x423e4a
423dad:	6a 02                	push   $0x2
423daf:	6a 00                	push   $0x0
423db1:	ff b5 e8 ef ff ff    	push   -0x1018(%ebp)
423db7:	e8 23 b8 00 00       	call   0x42f5df
423dbc:	8b 8d f8 ef ff ff    	mov    -0x1008(%ebp),%ecx
423dc2:	83 c4 0c             	add    $0xc,%esp
423dc5:	3b c1                	cmp    %ecx,%eax
423dc7:	75 1c                	jne    0x423de5
423dc9:	8b 43 08             	mov    0x8(%ebx),%eax
423dcc:	8d 14 30             	lea    (%eax,%esi,1),%edx
423dcf:	eb 07                	jmp    0x423dd8
423dd1:	80 38 0a             	cmpb   $0xa,(%eax)
423dd4:	75 01                	jne    0x423dd7
423dd6:	46                   	inc    %esi
423dd7:	40                   	inc    %eax
423dd8:	3b c2                	cmp    %edx,%eax
423dda:	72 f5                	jb     0x423dd1
423ddc:	f7 43 0c 00 20 00 00 	testl  $0x2000,0xc(%ebx)
423de3:	eb 55                	jmp    0x423e3a
423de5:	6a 00                	push   $0x0
423de7:	51                   	push   %ecx
423de8:	ff b5 e8 ef ff ff    	push   -0x1018(%ebp)
423dee:	e8 ec b7 00 00       	call   0x42f5df
423df3:	83 c4 0c             	add    $0xc,%esp
423df6:	85 c0                	test   %eax,%eax
423df8:	79 05                	jns    0x423dff
423dfa:	83 c8 ff             	or     $0xffffffff,%eax
423dfd:	eb 57                	jmp    0x423e56
423dff:	b8 00 02 00 00       	mov    $0x200,%eax
423e04:	3b f0                	cmp    %eax,%esi
423e06:	77 11                	ja     0x423e19
423e08:	f6 43 0c 08          	testb  $0x8,0xc(%ebx)
423e0c:	74 0b                	je     0x423e19
423e0e:	f7 43 0c 00 04 00 00 	testl  $0x400,0xc(%ebx)
423e15:	8b f0                	mov    %eax,%esi
423e17:	74 03                	je     0x423e1c
423e19:	8b 73 18             	mov    0x18(%ebx),%esi
423e1c:	8b 85 f0 ef ff ff    	mov    -0x1010(%ebp),%eax
423e22:	8b 8d e4 ef ff ff    	mov    -0x101c(%ebp),%ecx
423e28:	8b 04 85 40 09 4c 00 	mov    0x4c0940(,%eax,4),%eax
423e2f:	f6 44 01 04 04       	testb  $0x4,0x4(%ecx,%eax,1)
423e34:	8b 8d f8 ef ff ff    	mov    -0x1008(%ebp),%ecx
423e3a:	74 01                	je     0x423e3d
423e3c:	46                   	inc    %esi
423e3d:	8a 95 f7 ef ff ff    	mov    -0x1009(%ebp),%dl
423e43:	80 fa 01             	cmp    $0x1,%dl
423e46:	75 02                	jne    0x423e4a
423e48:	d1 ee                	shr    $1,%esi
423e4a:	2b ce                	sub    %esi,%ecx
423e4c:	80 fa 01             	cmp    $0x1,%dl
423e4f:	75 02                	jne    0x423e53
423e51:	d1 ef                	shr    $1,%edi
423e53:	8d 04 0f             	lea    (%edi,%ecx,1),%eax
423e56:	5f                   	pop    %edi
423e57:	5e                   	pop    %esi
423e58:	8b 4d fc             	mov    -0x4(%ebp),%ecx
423e5b:	33 cd                	xor    %ebp,%ecx
423e5d:	5b                   	pop    %ebx
423e5e:	e8 a9 68 00 00       	call   0x42a70c
423e63:	c9                   	leave
423e64:	c3                   	ret
423e65:	6a 0c                	push   $0xc
423e67:	68 30 6c 4b 00       	push   $0x4b6c30
423e6c:	e8 4f 2c 00 00       	call   0x426ac0
423e71:	33 c0                	xor    %eax,%eax
423e73:	8b 75 08             	mov    0x8(%ebp),%esi
423e76:	85 f6                	test   %esi,%esi
423e78:	0f 95 c0             	setne  %al
423e7b:	85 c0                	test   %eax,%eax
423e7d:	75 15                	jne    0x423e94
423e7f:	e8 8a 3d 00 00       	call   0x427c0e
423e84:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
423e8a:	e8 81 2f 00 00       	call   0x426e10
423e8f:	83 c8 ff             	or     $0xffffffff,%eax
423e92:	eb 25                	jmp    0x423eb9
423e94:	56                   	push   %esi
423e95:	e8 82 0f 00 00       	call   0x424e1c
423e9a:	59                   	pop    %ecx
423e9b:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
423e9f:	56                   	push   %esi
423ea0:	e8 67 fc ff ff       	call   0x423b0c
423ea5:	59                   	pop    %ecx
423ea6:	8b f8                	mov    %eax,%edi
423ea8:	89 7d e4             	mov    %edi,-0x1c(%ebp)
423eab:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
423eb2:	e8 0e 00 00 00       	call   0x423ec5
423eb7:	8b c7                	mov    %edi,%eax
423eb9:	e8 47 2c 00 00       	call   0x426b05
423ebe:	c3                   	ret
423ebf:	8b 75 08             	mov    0x8(%ebp),%esi
423ec2:	8b 7d e4             	mov    -0x1c(%ebp),%edi
423ec5:	56                   	push   %esi
423ec6:	e8 c0 0f 00 00       	call   0x424e8b
423ecb:	59                   	pop    %ecx
423ecc:	c3                   	ret
423ecd:	55                   	push   %ebp
423ece:	8b ec                	mov    %esp,%ebp
423ed0:	53                   	push   %ebx
423ed1:	8b 5d 08             	mov    0x8(%ebp),%ebx
423ed4:	56                   	push   %esi
423ed5:	33 f6                	xor    %esi,%esi
423ed7:	85 db                	test   %ebx,%ebx
423ed9:	75 15                	jne    0x423ef0
423edb:	e8 2e 3d 00 00       	call   0x427c0e
423ee0:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
423ee6:	e8 25 2f 00 00       	call   0x426e10
423eeb:	83 c8 ff             	or     $0xffffffff,%eax
423eee:	eb 68                	jmp    0x423f58
423ef0:	57                   	push   %edi
423ef1:	68 bc 03 00 00       	push   $0x3bc
423ef6:	6a 01                	push   $0x1
423ef8:	e8 89 2a 00 00       	call   0x426986
423efd:	8b f8                	mov    %eax,%edi
423eff:	59                   	pop    %ecx
423f00:	59                   	pop    %ecx
423f01:	85 ff                	test   %edi,%edi
423f03:	74 3d                	je     0x423f42
423f05:	e8 03 3b 00 00       	call   0x427a0d
423f0a:	ff 70 6c             	push   0x6c(%eax)
423f0d:	57                   	push   %edi
423f0e:	e8 81 3b 00 00       	call   0x427a94
423f13:	8b 45 10             	mov    0x10(%ebp),%eax
423f16:	59                   	pop    %ecx
423f17:	59                   	pop    %ecx
423f18:	57                   	push   %edi
423f19:	6a 04                	push   $0x4
423f1b:	57                   	push   %edi
423f1c:	68 d8 3f 42 00       	push   $0x423fd8
423f21:	ff 75 0c             	push   0xc(%ebp)
423f24:	89 5f 54             	mov    %ebx,0x54(%edi)
423f27:	56                   	push   %esi
423f28:	89 47 58             	mov    %eax,0x58(%edi)
423f2b:	ff 15 38 d3 48 00    	call   *0x48d338
423f31:	8b f0                	mov    %eax,%esi
423f33:	89 77 04             	mov    %esi,0x4(%edi)
423f36:	85 f6                	test   %esi,%esi
423f38:	75 22                	jne    0x423f5c
423f3a:	ff 15 10 d3 48 00    	call   *0x48d310
423f40:	8b f0                	mov    %eax,%esi
423f42:	57                   	push   %edi
423f43:	e8 55 dd ff ff       	call   0x421c9d
423f48:	59                   	pop    %ecx
423f49:	85 f6                	test   %esi,%esi
423f4b:	74 07                	je     0x423f54
423f4d:	56                   	push   %esi
423f4e:	e8 9a 3c 00 00       	call   0x427bed
423f53:	59                   	pop    %ecx
423f54:	83 c8 ff             	or     $0xffffffff,%eax
423f57:	5f                   	pop    %edi
423f58:	5e                   	pop    %esi
423f59:	5b                   	pop    %ebx
423f5a:	5d                   	pop    %ebp
423f5b:	c3                   	ret
423f5c:	56                   	push   %esi
423f5d:	ff 15 58 d3 48 00    	call   *0x48d358
423f63:	83 f8 ff             	cmp    $0xffffffff,%eax
423f66:	74 d2                	je     0x423f3a
423f68:	8b c6                	mov    %esi,%eax
423f6a:	eb eb                	jmp    0x423f57
423f6c:	6a 0c                	push   $0xc
423f6e:	68 50 6c 4b 00       	push   $0x4b6c50
423f73:	e8 48 2b 00 00       	call   0x426ac0
423f78:	e8 90 3a 00 00       	call   0x427a0d
423f7d:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
423f81:	ff 70 58             	push   0x58(%eax)
423f84:	ff 50 54             	call   *0x54(%eax)
423f87:	59                   	pop    %ecx
423f88:	e8 20 00 00 00       	call   0x423fad
423f8d:	8b 4d ec             	mov    -0x14(%ebp),%ecx
423f90:	8b 01                	mov    (%ecx),%eax
423f92:	8b 00                	mov    (%eax),%eax
423f94:	89 45 e4             	mov    %eax,-0x1c(%ebp)
423f97:	51                   	push   %ecx
423f98:	50                   	push   %eax
423f99:	e8 f4 67 00 00       	call   0x42a792
423f9e:	59                   	pop    %ecx
423f9f:	59                   	pop    %ecx
423fa0:	c3                   	ret
423fa1:	8b 65 e8             	mov    -0x18(%ebp),%esp
423fa4:	ff 75 e4             	push   -0x1c(%ebp)
423fa7:	e8 7a d2 ff ff       	call   0x421226
423fac:	cc                   	int3
423fad:	56                   	push   %esi
423fae:	e8 72 3a 00 00       	call   0x427a25
423fb3:	8b f0                	mov    %eax,%esi
423fb5:	85 f6                	test   %esi,%esi
423fb7:	74 16                	je     0x423fcf
423fb9:	83 7e 04 ff          	cmpl   $0xffffffff,0x4(%esi)
423fbd:	74 09                	je     0x423fc8
423fbf:	ff 76 04             	push   0x4(%esi)
423fc2:	ff 15 0c d3 48 00    	call   *0x48d30c
423fc8:	56                   	push   %esi
423fc9:	e8 09 3a 00 00       	call   0x4279d7
423fce:	59                   	pop    %ecx
423fcf:	6a 00                	push   $0x0
423fd1:	ff 15 50 d3 48 00    	call   *0x48d350
423fd7:	cc                   	int3
423fd8:	55                   	push   %ebp
423fd9:	8b ec                	mov    %esp,%ebp
423fdb:	e8 ba 38 00 00       	call   0x42789a
423fe0:	50                   	push   %eax
423fe1:	e8 c4 3e 00 00       	call   0x427eaa