412b3c:	b9 d5 02 00 00       	mov    $0x2d5,%ecx
412b41:	56                   	push   %esi
412b42:	e8 d1 f9 ff ff       	call   0x412518
412b47:	5f                   	pop    %edi
412b48:	5e                   	pop    %esi
412b49:	5b                   	pop    %ebx
412b4a:	c3                   	ret
412b4b:	6a 0c                	push   $0xc
412b4d:	b8 fb d5 41 00       	mov    $0x41d5fb,%eax
412b52:	e8 e1 98 00 00       	call   0x41c438
412b57:	8b f2                	mov    %edx,%esi
412b59:	51                   	push   %ecx
412b5a:	8d 4d ec             	lea    -0x14(%ebp),%ecx
412b5d:	ff 15 74 31 42 00    	call   *0x423174
412b63:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
412b67:	8d 4d f0             	lea    -0x10(%ebp),%ecx
412b6a:	56                   	push   %esi
412b6b:	ff 15 74 31 42 00    	call   *0x423174
412b71:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
412b75:	8d 4d ec             	lea    -0x14(%ebp),%ecx
412b78:	33 ff                	xor    %edi,%edi
412b7a:	ff 15 78 31 42 00    	call   *0x423178
412b80:	8d 4d f0             	lea    -0x10(%ebp),%ecx
412b83:	ff 15 78 31 42 00    	call   *0x423178
412b89:	8b 45 ec             	mov    -0x14(%ebp),%eax
412b8c:	33 d2                	xor    %edx,%edx
412b8e:	6a 20                	push   $0x20
412b90:	5e                   	pop    %esi
412b91:	8b 58 f8             	mov    -0x8(%eax),%ebx
412b94:	52                   	push   %edx
412b95:	50                   	push   %eax
412b96:	8d 4d f0             	lea    -0x10(%ebp),%ecx
412b99:	ff 15 7c 31 42 00    	call   *0x42317c
412b9f:	8b d0                	mov    %eax,%edx
412ba1:	85 d2                	test   %edx,%edx
412ba3:	78 5d                	js     0x412c02
412ba5:	8b 45 f0             	mov    -0x10(%ebp),%eax
412ba8:	74 19                	je     0x412bc3
412baa:	8d 4a ff             	lea    -0x1(%edx),%ecx
412bad:	85 c9                	test   %ecx,%ecx
412baf:	78 0b                	js     0x412bbc
412bb1:	3b 48 f8             	cmp    -0x8(%eax),%ecx
412bb4:	7d 06                	jge    0x412bbc
412bb6:	0f b7 0c 48          	movzwl (%eax,%ecx,2),%ecx
412bba:	eb 02                	jmp    0x412bbe
412bbc:	33 c9                	xor    %ecx,%ecx
412bbe:	66 3b f1             	cmp    %cx,%si
412bc1:	75 36                	jne    0x412bf9
412bc3:	8d 0c 1a             	lea    (%edx,%ebx,1),%ecx
412bc6:	85 c9                	test   %ecx,%ecx
412bc8:	78 0b                	js     0x412bd5
412bca:	3b 48 f8             	cmp    -0x8(%eax),%ecx
412bcd:	7d 06                	jge    0x412bd5
412bcf:	0f b7 34 48          	movzwl (%eax,%ecx,2),%esi
412bd3:	eb 02                	jmp    0x412bd7
412bd5:	33 f6                	xor    %esi,%esi
412bd7:	21 7d e8             	and    %edi,-0x18(%ebp)
412bda:	66 39 75 e8          	cmp    %si,-0x18(%ebp)
412bde:	74 1f                	je     0x412bff
412be0:	85 c9                	test   %ecx,%ecx
412be2:	78 0b                	js     0x412bef
412be4:	3b 48 f8             	cmp    -0x8(%eax),%ecx
412be7:	7d 06                	jge    0x412bef
412be9:	0f b7 04 48          	movzwl (%eax,%ecx,2),%eax
412bed:	eb 02                	jmp    0x412bf1
412bef:	33 c0                	xor    %eax,%eax
412bf1:	6a 20                	push   $0x20
412bf3:	5e                   	pop    %esi
412bf4:	66 3b f0             	cmp    %ax,%si
412bf7:	74 06                	je     0x412bff
412bf9:	8b 45 ec             	mov    -0x14(%ebp),%eax
412bfc:	42                   	inc    %edx
412bfd:	eb 95                	jmp    0x412b94
412bff:	33 ff                	xor    %edi,%edi
412c01:	47                   	inc    %edi
412c02:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
412c06:	8d 4d f0             	lea    -0x10(%ebp),%ecx
412c09:	ff 15 44 32 42 00    	call   *0x423244
412c0f:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
412c13:	8d 4d ec             	lea    -0x14(%ebp),%ecx
412c16:	ff 15 44 32 42 00    	call   *0x423244
412c1c:	8b c7                	mov    %edi,%eax
412c1e:	e8 e3 97 00 00       	call   0x41c406
412c23:	c3                   	ret
412c24:	6a 10                	push   $0x10
412c26:	b8 53 d6 41 00       	mov    $0x41d653,%eax
412c2b:	e8 08 98 00 00       	call   0x41c438
412c30:	8b fa                	mov    %edx,%edi
412c32:	83 65 ec 00          	andl   $0x0,-0x14(%ebp)
412c36:	51                   	push   %ecx
412c37:	8d 4d f0             	lea    -0x10(%ebp),%ecx
412c3a:	ff 15 74 31 42 00    	call   *0x423174
412c40:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
412c44:	8d 4d f0             	lea    -0x10(%ebp),%ecx
412c47:	6a 20                	push   $0x20
412c49:	ff 15 e0 33 42 00    	call   *0x4233e0
412c4f:	85 c0                	test   %eax,%eax
412c51:	79 0f                	jns    0x412c62
412c53:	6a 09                	push   $0x9
412c55:	8d 4d f0             	lea    -0x10(%ebp),%ecx
412c58:	ff 15 e0 33 42 00    	call   *0x4233e0
412c5e:	85 c0                	test   %eax,%eax
412c60:	78 65                	js     0x412cc7
412c62:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
412c66:	8d 45 f0             	lea    -0x10(%ebp),%eax
412c69:	50                   	push   %eax
412c6a:	6a 22                	push   $0x22
412c6c:	8d 45 e4             	lea    -0x1c(%ebp),%eax
412c6f:	50                   	push   %eax
412c70:	ff 15 e8 33 42 00    	call   *0x4233e8
412c76:	c7 45 ec 01 00 00 00 	movl   $0x1,-0x14(%ebp)
412c7d:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
412c81:	6a 22                	push   $0x22
412c83:	50                   	push   %eax
412c84:	8d 45 e8             	lea    -0x18(%ebp),%eax
412c87:	50                   	push   %eax
412c88:	ff 15 e4 33 42 00    	call   *0x4233e4
412c8e:	6a 03                	push   $0x3
412c90:	5e                   	pop    %esi
412c91:	50                   	push   %eax
412c92:	8d 4d f0             	lea    -0x10(%ebp),%ecx
412c95:	89 75 ec             	mov    %esi,-0x14(%ebp)
412c98:	ff 15 80 33 42 00    	call   *0x423380
412c9e:	89 75 ec             	mov    %esi,-0x14(%ebp)
412ca1:	83 e6 fd             	and    $0xfffffffd,%esi
412ca4:	89 75 ec             	mov    %esi,-0x14(%ebp)
412ca7:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
412cab:	8d 4d e8             	lea    -0x18(%ebp),%ecx
412cae:	ff 15 44 32 42 00    	call   *0x423244
412cb4:	83 e6 fe             	and    $0xfffffffe,%esi
412cb7:	89 75 ec             	mov    %esi,-0x14(%ebp)
412cba:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
412cbe:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
412cc1:	ff 15 44 32 42 00    	call   *0x423244
412cc7:	8b 17                	mov    (%edi),%edx
412cc9:	8b 4d f0             	mov    -0x10(%ebp),%ecx
412ccc:	e8 7a fe ff ff       	call   0x412b4b
412cd1:	85 c0                	test   %eax,%eax
412cd3:	75 1e                	jne    0x412cf3
412cd5:	8b 07                	mov    (%edi),%eax
412cd7:	83 78 f8 00          	cmpl   $0x0,-0x8(%eax)
412cdb:	7e 0a                	jle    0x412ce7
412cdd:	6a 20                	push   $0x20
412cdf:	8b cf                	mov    %edi,%ecx
412ce1:	ff 15 d8 33 42 00    	call   *0x4233d8
412ce7:	8d 45 f0             	lea    -0x10(%ebp),%eax
412cea:	8b cf                	mov    %edi,%ecx
412cec:	50                   	push   %eax
412ced:	ff 15 ec 33 42 00    	call   *0x4233ec
412cf3:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
412cf7:	8d 4d f0             	lea    -0x10(%ebp),%ecx
412cfa:	ff 15 44 32 42 00    	call   *0x423244
412d00:	e8 01 97 00 00       	call   0x41c406
412d05:	c3                   	ret
412d06:	6a 08                	push   $0x8
412d08:	b8 79 d1 41 00       	mov    $0x41d179,%eax
412d0d:	e8 26 97 00 00       	call   0x41c438
412d12:	89 55 ec             	mov    %edx,-0x14(%ebp)
412d15:	8b f9                	mov    %ecx,%edi
412d17:	8d 4d f0             	lea    -0x10(%ebp),%ecx
412d1a:	33 f6                	xor    %esi,%esi
412d1c:	ff 15 40 32 42 00    	call   *0x423240
412d22:	89 75 fc             	mov    %esi,-0x4(%ebp)
412d25:	bb bf 0f 00 00       	mov    $0xfbf,%ebx
412d2a:	39 35 38 1f 42 00    	cmp    %esi,0x421f38
412d30:	74 05                	je     0x412d37
412d32:	bb bf 1f 00 00       	mov    $0x1fbf,%ebx
412d37:	8b 45 ec             	mov    -0x14(%ebp),%eax
412d3a:	85 c0                	test   %eax,%eax
412d3c:	0f 84 6a 01 00 00    	je     0x412eac
412d42:	8b 07                	mov    (%edi),%eax
412d44:	b9 00 10 00 00       	mov    $0x1000,%ecx
412d49:	85 c1                	test   %eax,%ecx
412d4b:	74 32                	je     0x412d7f
412d4d:	83 3d 30 1f 42 00 00 	cmpl   $0x0,0x421f30
412d54:	8b f1                	mov    %ecx,%esi
412d56:	74 27                	je     0x412d7f
412d58:	83 3d 38 1f 42 00 00 	cmpl   $0x0,0x421f38
412d5f:	74 1e                	je     0x412d7f
412d61:	8d 55 f0             	lea    -0x10(%ebp),%edx
412d64:	b9 c8 02 00 00       	mov    $0x2c8,%ecx
412d69:	e8 d3 ba ff ff       	call   0x40e841
412d6e:	ff 75 f0             	push   -0x10(%ebp)
412d71:	68 6d 01 00 00       	push   $0x16d
412d76:	e8 d8 b8 ff ff       	call   0x40e653
412d7b:	8b 07                	mov    (%edi),%eax
412d7d:	59                   	pop    %ecx
412d7e:	59                   	pop    %ecx
412d7f:	b9 00 20 00 00       	mov    $0x2000,%ecx
412d84:	85 c1                	test   %eax,%ecx
412d86:	74 29                	je     0x412db1
412d88:	0b f1                	or     %ecx,%esi
412d8a:	83 3d 30 1f 42 00 00 	cmpl   $0x0,0x421f30
412d91:	74 1e                	je     0x412db1
412d93:	8d 55 f0             	lea    -0x10(%ebp),%edx
412d96:	b9 c9 02 00 00       	mov    $0x2c9,%ecx
412d9b:	e8 a1 ba ff ff       	call   0x40e841
412da0:	ff 75 f0             	push   -0x10(%ebp)
412da3:	68 6d 01 00 00       	push   $0x16d
412da8:	e8 a6 b8 ff ff       	call   0x40e653
412dad:	8b 07                	mov    (%edi),%eax
412daf:	59                   	pop    %ecx
412db0:	59                   	pop    %ecx
412db1:	b9 00 40 00 00       	mov    $0x4000,%ecx
412db6:	85 c1                	test   %eax,%ecx
412db8:	74 29                	je     0x412de3
412dba:	0b f1                	or     %ecx,%esi
412dbc:	83 3d 30 1f 42 00 00 	cmpl   $0x0,0x421f30
412dc3:	74 1e                	je     0x412de3
412dc5:	8d 55 f0             	lea    -0x10(%ebp),%edx
412dc8:	b9 ca 02 00 00       	mov    $0x2ca,%ecx
412dcd:	e8 6f ba ff ff       	call   0x40e841
412dd2:	ff 75 f0             	push   -0x10(%ebp)
412dd5:	68 6d 01 00 00       	push   $0x16d
412dda:	e8 74 b8 ff ff       	call   0x40e653
412ddf:	8b 07                	mov    (%edi),%eax
412de1:	59                   	pop    %ecx
412de2:	59                   	pop    %ecx
412de3:	b9 00 80 00 00       	mov    $0x8000,%ecx
412de8:	85 c1                	test   %eax,%ecx
412dea:	74 29                	je     0x412e15
412dec:	0b f1                	or     %ecx,%esi
412dee:	83 3d 30 1f 42 00 00 	cmpl   $0x0,0x421f30
412df5:	74 1e                	je     0x412e15
412df7:	8d 55 f0             	lea    -0x10(%ebp),%edx
412dfa:	b9 cb 02 00 00       	mov    $0x2cb,%ecx
412dff:	e8 3d ba ff ff       	call   0x40e841
412e04:	ff 75 f0             	push   -0x10(%ebp)
412e07:	68 6d 01 00 00       	push   $0x16d
412e0c:	e8 42 b8 ff ff       	call   0x40e653
412e11:	8b 07                	mov    (%edi),%eax
412e13:	59                   	pop    %ecx
412e14:	59                   	pop    %ecx
412e15:	b9 00 00 01 00       	mov    $0x10000,%ecx
412e1a:	85 c1                	test   %eax,%ecx
412e1c:	74 29                	je     0x412e47
412e1e:	0b f1                	or     %ecx,%esi
412e20:	83 3d 30 1f 42 00 00 	cmpl   $0x0,0x421f30
412e27:	74 1e                	je     0x412e47
412e29:	8d 55 f0             	lea    -0x10(%ebp),%edx
412e2c:	b9 cc 02 00 00       	mov    $0x2cc,%ecx
412e31:	e8 0b ba ff ff       	call   0x40e841
412e36:	ff 75 f0             	push   -0x10(%ebp)
412e39:	68 6d 01 00 00       	push   $0x16d
412e3e:	e8 10 b8 ff ff       	call   0x40e653
412e43:	8b 07                	mov    (%edi),%eax
412e45:	59                   	pop    %ecx
412e46:	59                   	pop    %ecx
412e47:	b9 00 00 02 00       	mov    $0x20000,%ecx
412e4c:	85 c1                	test   %eax,%ecx
412e4e:	74 29                	je     0x412e79
412e50:	0b f1                	or     %ecx,%esi
412e52:	83 3d 30 1f 42 00 00 	cmpl   $0x0,0x421f30
412e59:	74 1e                	je     0x412e79
412e5b:	8d 55 f0             	lea    -0x10(%ebp),%edx
412e5e:	b9 cd 02 00 00       	mov    $0x2cd,%ecx
412e63:	e8 d9 b9 ff ff       	call   0x40e841
412e68:	ff 75 f0             	push   -0x10(%ebp)
412e6b:	68 6d 01 00 00       	push   $0x16d
412e70:	e8 de b7 ff ff       	call   0x40e653
412e75:	8b 07                	mov    (%edi),%eax
412e77:	59                   	pop    %ecx
412e78:	59                   	pop    %ecx
412e79:	b9 00 00 04 00       	mov    $0x40000,%ecx
412e7e:	85 c1                	test   %eax,%ecx
412e80:	74 27                	je     0x412ea9
412e82:	0b f1                	or     %ecx,%esi
412e84:	83 3d 30 1f 42 00 00 	cmpl   $0x0,0x421f30
412e8b:	74 1c                	je     0x412ea9
412e8d:	8d 55 f0             	lea    -0x10(%ebp),%edx
412e90:	b9 ce 02 00 00       	mov    $0x2ce,%ecx
412e95:	e8 a7 b9 ff ff       	call   0x40e841
412e9a:	ff 75 f0             	push   -0x10(%ebp)
412e9d:	68 6d 01 00 00       	push   $0x16d
412ea2:	e8 ac b7 ff ff       	call   0x40e653
412ea7:	59                   	pop    %ecx
412ea8:	59                   	pop    %ecx
412ea9:	8b 45 ec             	mov    -0x14(%ebp),%eax
412eac:	81 cb 00 e0 0f 00    	or     $0xfe000,%ebx
412eb2:	85 c0                	test   %eax,%eax
412eb4:	74 33                	je     0x412ee9
412eb6:	b9 00 00 08 00       	mov    $0x80000,%ecx
412ebb:	85 0f                	test   %ecx,(%edi)
412ebd:	74 2a                	je     0x412ee9
412ebf:	0b f1                	or     %ecx,%esi
412ec1:	83 3d 30 1f 42 00 00 	cmpl   $0x0,0x421f30
412ec8:	74 1f                	je     0x412ee9
412eca:	8d 55 f0             	lea    -0x10(%ebp),%edx
412ecd:	b9 cf 02 00 00       	mov    $0x2cf,%ecx
412ed2:	e8 6a b9 ff ff       	call   0x40e841
412ed7:	ff 75 f0             	push   -0x10(%ebp)
412eda:	68 6d 01 00 00       	push   $0x16d
412edf:	e8 6f b7 ff ff       	call   0x40e653
412ee4:	8b 45 ec             	mov    -0x14(%ebp),%eax
412ee7:	59                   	pop    %ecx
412ee8:	59                   	pop    %ecx
412ee9:	83 3d 38 1f 42 00 00 	cmpl   $0x0,0x421f38
412ef0:	b9 00 00 10 00       	mov    $0x100000,%ecx
412ef5:	74 02                	je     0x412ef9
412ef7:	0b d9                	or     %ecx,%ebx
412ef9:	85 c0                	test   %eax,%eax
412efb:	74 37                	je     0x412f34
412efd:	85 0f                	test   %ecx,(%edi)
412eff:	74 33                	je     0x412f34
412f01:	0b f1                	or     %ecx,%esi
412f03:	83 3d 30 1f 42 00 00 	cmpl   $0x0,0x421f30
412f0a:	74 28                	je     0x412f34
412f0c:	83 3d 38 1f 42 00 00 	cmpl   $0x0,0x421f38
412f13:	74 1f                	je     0x412f34
412f15:	8d 55 f0             	lea    -0x10(%ebp),%edx
412f18:	b9 d0 02 00 00       	mov    $0x2d0,%ecx
412f1d:	e8 1f b9 ff ff       	call   0x40e841
412f22:	ff 75 f0             	push   -0x10(%ebp)
412f25:	68 6d 01 00 00       	push   $0x16d
412f2a:	e8 24 b7 ff ff       	call   0x40e653
412f2f:	8b 45 ec             	mov    -0x14(%ebp),%eax
412f32:	59                   	pop    %ecx
412f33:	59                   	pop    %ecx
412f34:	b9 00 00 20 00       	mov    $0x200000,%ecx
412f39:	0b d9                	or     %ecx,%ebx
412f3b:	85 c0                	test   %eax,%eax
412f3d:	74 2e                	je     0x412f6d
412f3f:	85 0f                	test   %ecx,(%edi)
412f41:	74 2a                	je     0x412f6d
412f43:	0b f1                	or     %ecx,%esi
412f45:	83 3d 30 1f 42 00 00 	cmpl   $0x0,0x421f30
412f4c:	74 1f                	je     0x412f6d
412f4e:	8d 55 f0             	lea    -0x10(%ebp),%edx
412f51:	b9 d1 02 00 00       	mov    $0x2d1,%ecx
412f56:	e8 e6 b8 ff ff       	call   0x40e841
412f5b:	ff 75 f0             	push   -0x10(%ebp)
412f5e:	68 6d 01 00 00       	push   $0x16d
412f63:	e8 eb b6 ff ff       	call   0x40e653
412f68:	8b 45 ec             	mov    -0x14(%ebp),%eax
412f6b:	59                   	pop    %ecx
412f6c:	59                   	pop    %ecx
412f6d:	83 3d 38 1f 42 00 00 	cmpl   $0x0,0x421f38
412f74:	b9 00 00 40 00       	mov    $0x400000,%ecx
412f79:	74 02                	je     0x412f7d
412f7b:	0b d9                	or     %ecx,%ebx
412f7d:	85 c0                	test   %eax,%eax
412f7f:	0f 84 9d 00 00 00    	je     0x413022
412f85:	8b 07                	mov    (%edi),%eax
412f87:	85 c1                	test   %eax,%ecx
412f89:	74 32                	je     0x412fbd
412f8b:	0b f1                	or     %ecx,%esi
412f8d:	83 3d 30 1f 42 00 00 	cmpl   $0x0,0x421f30
412f94:	74 27                	je     0x412fbd
412f96:	83 3d 38 1f 42 00 00 	cmpl   $0x0,0x421f38
412f9d:	74 1e                	je     0x412fbd