4229aa:	f7 d9                	neg    %ecx
4229ac:	1b c9                	sbb    %ecx,%ecx
4229ae:	83 e1 02             	and    $0x2,%ecx
4229b1:	eb 31                	jmp    0x4229e4
4229b3:	33 c9                	xor    %ecx,%ecx
4229b5:	39 73 18             	cmp    %esi,0x18(%ebx)
4229b8:	0f 95 c1             	setne  %cl
4229bb:	eb 27                	jmp    0x4229e4
4229bd:	33 c9                	xor    %ecx,%ecx
4229bf:	41                   	inc    %ecx
4229c0:	eb 22                	jmp    0x4229e4
4229c2:	8b 43 50             	mov    0x50(%ebx),%eax
4229c5:	8b c8                	mov    %eax,%ecx
4229c7:	83 e9 03             	sub    $0x3,%ecx
4229ca:	74 0f                	je     0x4229db
4229cc:	83 e9 01             	sub    $0x1,%ecx
4229cf:	74 05                	je     0x4229d6
4229d1:	83 e9 01             	sub    $0x1,%ecx
4229d4:	75 b8                	jne    0x42298e
4229d6:	6a 02                	push   $0x2
4229d8:	59                   	pop    %ecx
4229d9:	eb 0d                	jmp    0x4229e8
4229db:	8b ce                	mov    %esi,%ecx
4229dd:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
4229e4:	85 c9                	test   %ecx,%ecx
4229e6:	74 70                	je     0x422a58
4229e8:	39 53 48             	cmp    %edx,0x48(%ebx)
4229eb:	0f 45 7b 48          	cmovne 0x48(%ebx),%edi
4229ef:	4f                   	dec    %edi
4229f0:	83 ef 01             	sub    $0x1,%edi
4229f3:	74 46                	je     0x422a3b
4229f5:	4f                   	dec    %edi
4229f6:	83 ef 01             	sub    $0x1,%edi
4229f9:	74 26                	je     0x422a21
4229fb:	bf 57 00 07 80       	mov    $0x80070057,%edi
422a00:	57                   	push   %edi
422a01:	68 08 01 00 00       	push   $0x108
422a06:	68 20 af 45 00       	push   $0x45af20
422a0b:	8b f7                	mov    %edi,%esi
422a0d:	e8 c1 0d fe ff       	call   0x4037d3
422a12:	68 54 af 45 00       	push   $0x45af54
422a17:	57                   	push   %edi
422a18:	e8 12 d7 01 00       	call   0x44012f
422a1d:	59                   	pop    %ecx
422a1e:	59                   	pop    %ecx
422a1f:	eb 49                	jmp    0x422a6a
422a21:	83 e8 01             	sub    $0x1,%eax
422a24:	74 10                	je     0x422a36
422a26:	83 e8 01             	sub    $0x1,%eax
422a29:	74 0b                	je     0x422a36
422a2b:	48                   	dec    %eax
422a2c:	83 e8 01             	sub    $0x1,%eax
422a2f:	74 27                	je     0x422a58
422a31:	83 e8 01             	sub    $0x1,%eax
422a34:	eb 22                	jmp    0x422a58
422a36:	6a 02                	push   $0x2
422a38:	5a                   	pop    %edx
422a39:	eb 1d                	jmp    0x422a58
422a3b:	83 e8 01             	sub    $0x1,%eax
422a3e:	74 18                	je     0x422a58
422a40:	83 e8 01             	sub    $0x1,%eax
422a43:	74 13                	je     0x422a58
422a45:	48                   	dec    %eax
422a46:	83 e8 01             	sub    $0x1,%eax
422a49:	74 05                	je     0x422a50
422a4b:	83 e8 01             	sub    $0x1,%eax
422a4e:	75 08                	jne    0x422a58
422a50:	33 d2                	xor    %edx,%edx
422a52:	39 73 18             	cmp    %esi,0x18(%ebx)
422a55:	0f 95 c2             	setne  %dl
422a58:	8b 45 0c             	mov    0xc(%ebp),%eax
422a5b:	89 4b 5c             	mov    %ecx,0x5c(%ebx)
422a5e:	89 53 60             	mov    %edx,0x60(%ebx)
422a61:	85 c0                	test   %eax,%eax
422a63:	74 05                	je     0x422a6a
422a65:	8b 4d fc             	mov    -0x4(%ebp),%ecx
422a68:	89 08                	mov    %ecx,(%eax)
422a6a:	5f                   	pop    %edi
422a6b:	8b c6                	mov    %esi,%eax
422a6d:	5e                   	pop    %esi
422a6e:	5b                   	pop    %ebx
422a6f:	8b e5                	mov    %ebp,%esp
422a71:	5d                   	pop    %ebp
422a72:	c2 08 00             	ret    $0x8
422a75:	55                   	push   %ebp
422a76:	8b ec                	mov    %esp,%ebp
422a78:	8b 4d 14             	mov    0x14(%ebp),%ecx
422a7b:	8b 45 0c             	mov    0xc(%ebp),%eax
422a7e:	56                   	push   %esi
422a7f:	33 f6                	xor    %esi,%esi
422a81:	89 31                	mov    %esi,(%ecx)
422a83:	6a 01                	push   $0x1
422a85:	5a                   	pop    %edx
422a86:	2b c6                	sub    %esi,%eax
422a88:	74 7f                	je     0x422b09
422a8a:	2b c2                	sub    %edx,%eax
422a8c:	74 6e                	je     0x422afc
422a8e:	2b c2                	sub    %edx,%eax
422a90:	74 4f                	je     0x422ae1
422a92:	2b c2                	sub    %edx,%eax
422a94:	74 41                	je     0x422ad7
422a96:	2b c2                	sub    %edx,%eax
422a98:	74 24                	je     0x422abe
422a9a:	be ff ff 00 80       	mov    $0x8000ffff,%esi
422a9f:	56                   	push   %esi
422aa0:	68 37 06 00 00       	push   $0x637
422aa5:	68 58 b7 45 00       	push   $0x45b758
422aaa:	e8 24 0d fe ff       	call   0x4037d3
422aaf:	68 08 be 45 00       	push   $0x45be08
422ab4:	56                   	push   %esi
422ab5:	e8 75 d6 01 00       	call   0x44012f
422aba:	59                   	pop    %ecx
422abb:	59                   	pop    %ecx
422abc:	eb 56                	jmp    0x422b14
422abe:	6a 04                	push   $0x4
422ac0:	58                   	pop    %eax
422ac1:	39 45 08             	cmp    %eax,0x8(%ebp)
422ac4:	74 08                	je     0x422ace
422ac6:	c7 01 02 00 00 00    	movl   $0x2,(%ecx)
422acc:	eb 3d                	jmp    0x422b0b
422ace:	39 75 10             	cmp    %esi,0x10(%ebp)
422ad1:	74 38                	je     0x422b0b
422ad3:	89 01                	mov    %eax,(%ecx)
422ad5:	eb 34                	jmp    0x422b0b
422ad7:	83 7d 08 03          	cmpl   $0x3,0x8(%ebp)
422adb:	74 12                	je     0x422aef
422add:	89 11                	mov    %edx,(%ecx)
422adf:	eb 2a                	jmp    0x422b0b
422ae1:	83 7d 08 02          	cmpl   $0x2,0x8(%ebp)
422ae5:	74 08                	je     0x422aef
422ae7:	c7 01 05 00 00 00    	movl   $0x5,(%ecx)
422aed:	eb 1c                	jmp    0x422b0b
422aef:	39 75 10             	cmp    %esi,0x10(%ebp)
422af2:	74 17                	je     0x422b0b
422af4:	c7 01 04 00 00 00    	movl   $0x4,(%ecx)
422afa:	eb 0f                	jmp    0x422b0b
422afc:	39 55 08             	cmp    %edx,0x8(%ebp)
422aff:	74 0a                	je     0x422b0b
422b01:	c7 01 06 00 00 00    	movl   $0x6,(%ecx)
422b07:	eb 02                	jmp    0x422b0b
422b09:	89 31                	mov    %esi,(%ecx)
422b0b:	39 31                	cmp    %esi,(%ecx)
422b0d:	74 05                	je     0x422b14
422b0f:	8b 4d 18             	mov    0x18(%ebp),%ecx
422b12:	89 11                	mov    %edx,(%ecx)
422b14:	8b c6                	mov    %esi,%eax
422b16:	5e                   	pop    %esi
422b17:	5d                   	pop    %ebp
422b18:	c2 14 00             	ret    $0x14
422b1b:	55                   	push   %ebp
422b1c:	8b ec                	mov    %esp,%ebp
422b1e:	83 ec 20             	sub    $0x20,%esp
422b21:	8b 45 08             	mov    0x8(%ebp),%eax
422b24:	53                   	push   %ebx
422b25:	56                   	push   %esi
422b26:	33 f6                	xor    %esi,%esi
422b28:	33 db                	xor    %ebx,%ebx
422b2a:	21 75 fc             	and    %esi,-0x4(%ebp)
422b2d:	21 75 f8             	and    %esi,-0x8(%ebp)
422b30:	21 75 f4             	and    %esi,-0xc(%ebp)
422b33:	21 75 f0             	and    %esi,-0x10(%ebp)
422b36:	21 75 ec             	and    %esi,-0x14(%ebp)
422b39:	21 75 e8             	and    %esi,-0x18(%ebp)
422b3c:	21 75 e4             	and    %esi,-0x1c(%ebp)
422b3f:	39 98 c0 00 00 00    	cmp    %ebx,0xc0(%eax)
422b45:	0f 86 2b 03 00 00    	jbe    0x422e76
422b4b:	33 c9                	xor    %ecx,%ecx
422b4d:	89 4d e0             	mov    %ecx,-0x20(%ebp)
422b50:	57                   	push   %edi
422b51:	8b b8 bc 00 00 00    	mov    0xbc(%eax),%edi
422b57:	8b 45 0c             	mov    0xc(%ebp),%eax
422b5a:	03 f9                	add    %ecx,%edi
422b5c:	8b 04 98             	mov    (%eax,%ebx,4),%eax
422b5f:	83 e8 01             	sub    $0x1,%eax
422b62:	0f 84 da 00 00 00    	je     0x422c42
422b68:	83 e8 01             	sub    $0x1,%eax
422b6b:	0f 84 b0 00 00 00    	je     0x422c21
422b71:	83 e8 01             	sub    $0x1,%eax
422b74:	0f 84 86 00 00 00    	je     0x422c00
422b7a:	83 e8 01             	sub    $0x1,%eax
422b7d:	74 5c                	je     0x422bdb
422b7f:	83 e8 01             	sub    $0x1,%eax
422b82:	74 2f                	je     0x422bb3
422b84:	83 e8 01             	sub    $0x1,%eax
422b87:	0f 85 e8 00 00 00    	jne    0x422c75
422b8d:	39 45 e4             	cmp    %eax,-0x1c(%ebp)
422b90:	74 19                	je     0x422bab
422b92:	50                   	push   %eax
422b93:	68 20 cb 45 00       	push   $0x45cb20
422b98:	8d 45 e4             	lea    -0x1c(%ebp),%eax
422b9b:	50                   	push   %eax
422b9c:	e8 51 f3 fd ff       	call   0x401ef2
422ba1:	8b f0                	mov    %eax,%esi
422ba3:	85 f6                	test   %esi,%esi
422ba5:	0f 88 e2 00 00 00    	js     0x422c8d
422bab:	8d 45 e4             	lea    -0x1c(%ebp),%eax
422bae:	e9 ae 00 00 00       	jmp    0x422c61
422bb3:	83 7d e8 00          	cmpl   $0x0,-0x18(%ebp)
422bb7:	74 1a                	je     0x422bd3
422bb9:	6a 00                	push   $0x0
422bbb:	68 20 cb 45 00       	push   $0x45cb20
422bc0:	8d 45 e8             	lea    -0x18(%ebp),%eax
422bc3:	50                   	push   %eax
422bc4:	e8 29 f3 fd ff       	call   0x401ef2
422bc9:	8b f0                	mov    %eax,%esi
422bcb:	85 f6                	test   %esi,%esi
422bcd:	0f 88 ba 00 00 00    	js     0x422c8d
422bd3:	8d 45 e8             	lea    -0x18(%ebp),%eax
422bd6:	e9 86 00 00 00       	jmp    0x422c61
422bdb:	83 7d ec 00          	cmpl   $0x0,-0x14(%ebp)
422bdf:	74 1a                	je     0x422bfb
422be1:	6a 00                	push   $0x0
422be3:	68 20 cb 45 00       	push   $0x45cb20
422be8:	8d 45 ec             	lea    -0x14(%ebp),%eax
422beb:	50                   	push   %eax
422bec:	e8 01 f3 fd ff       	call   0x401ef2
422bf1:	8b f0                	mov    %eax,%esi
422bf3:	85 f6                	test   %esi,%esi
422bf5:	0f 88 92 00 00 00    	js     0x422c8d
422bfb:	8d 45 ec             	lea    -0x14(%ebp),%eax
422bfe:	eb 61                	jmp    0x422c61
422c00:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
422c04:	74 16                	je     0x422c1c
422c06:	6a 00                	push   $0x0
422c08:	68 20 cb 45 00       	push   $0x45cb20
422c0d:	8d 45 f0             	lea    -0x10(%ebp),%eax
422c10:	50                   	push   %eax
422c11:	e8 dc f2 fd ff       	call   0x401ef2
422c16:	8b f0                	mov    %eax,%esi
422c18:	85 f6                	test   %esi,%esi
422c1a:	78 71                	js     0x422c8d
422c1c:	8d 45 f0             	lea    -0x10(%ebp),%eax
422c1f:	eb 40                	jmp    0x422c61
422c21:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
422c25:	74 16                	je     0x422c3d
422c27:	6a 00                	push   $0x0
422c29:	68 20 cb 45 00       	push   $0x45cb20
422c2e:	8d 45 f4             	lea    -0xc(%ebp),%eax
422c31:	50                   	push   %eax
422c32:	e8 bb f2 fd ff       	call   0x401ef2
422c37:	8b f0                	mov    %eax,%esi
422c39:	85 f6                	test   %esi,%esi
422c3b:	78 50                	js     0x422c8d
422c3d:	8d 45 f4             	lea    -0xc(%ebp),%eax
422c40:	eb 1f                	jmp    0x422c61
422c42:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
422c46:	74 16                	je     0x422c5e
422c48:	6a 00                	push   $0x0
422c4a:	68 20 cb 45 00       	push   $0x45cb20
422c4f:	8d 45 f8             	lea    -0x8(%ebp),%eax
422c52:	50                   	push   %eax
422c53:	e8 9a f2 fd ff       	call   0x401ef2
422c58:	8b f0                	mov    %eax,%esi
422c5a:	85 f6                	test   %esi,%esi
422c5c:	78 2f                	js     0x422c8d
422c5e:	8d 45 f8             	lea    -0x8(%ebp),%eax
422c61:	6a 00                	push   $0x0
422c63:	ff 37                	push   (%edi)
422c65:	50                   	push   %eax
422c66:	e8 87 f2 fd ff       	call   0x401ef2
422c6b:	8b f0                	mov    %eax,%esi
422c6d:	85 f6                	test   %esi,%esi
422c6f:	0f 88 97 01 00 00    	js     0x422e0c
422c75:	8b 45 08             	mov    0x8(%ebp),%eax
422c78:	43                   	inc    %ebx
422c79:	83 45 e0 28          	addl   $0x28,-0x20(%ebp)
422c7d:	3b 98 c0 00 00 00    	cmp    0xc0(%eax),%ebx
422c83:	73 12                	jae    0x422c97
422c85:	8b 4d e0             	mov    -0x20(%ebp),%ecx
422c88:	e9 c4 fe ff ff       	jmp    0x422b51
422c8d:	68 24 cb 45 00       	push   $0x45cb24
422c92:	e9 7a 01 00 00       	jmp    0x422e11
422c97:	8b 45 f8             	mov    -0x8(%ebp),%eax
422c9a:	8b 7d 10             	mov    0x10(%ebp),%edi
422c9d:	85 c0                	test   %eax,%eax
422c9f:	74 40                	je     0x422ce1
422ca1:	6a 00                	push   $0x0
422ca3:	50                   	push   %eax
422ca4:	8d 45 fc             	lea    -0x4(%ebp),%eax
422ca7:	68 5c cb 45 00       	push   $0x45cb5c
422cac:	50                   	push   %eax
422cad:	e8 6e f2 fd ff       	call   0x401f20
422cb2:	8b f0                	mov    %eax,%esi
422cb4:	83 c4 10             	add    $0x10,%esp
422cb7:	85 f6                	test   %esi,%esi
422cb9:	79 0a                	jns    0x422cc5
422cbb:	68 7c cb 45 00       	push   $0x45cb7c
422cc0:	e9 4c 01 00 00       	jmp    0x422e11
422cc5:	33 db                	xor    %ebx,%ebx
422cc7:	53                   	push   %ebx
422cc8:	ff 75 fc             	push   -0x4(%ebp)
422ccb:	57                   	push   %edi
422ccc:	e8 38 f2 fd ff       	call   0x401f09
422cd1:	8b f0                	mov    %eax,%esi
422cd3:	85 f6                	test   %esi,%esi
422cd5:	79 0c                	jns    0x422ce3
422cd7:	68 a0 cb 45 00       	push   $0x45cba0
422cdc:	e9 30 01 00 00       	jmp    0x422e11
422ce1:	33 db                	xor    %ebx,%ebx
422ce3:	8b 45 f4             	mov    -0xc(%ebp),%eax
422ce6:	85 c0                	test   %eax,%eax
422ce8:	74 33                	je     0x422d1d
422cea:	53                   	push   %ebx
422ceb:	50                   	push   %eax
422cec:	8d 45 fc             	lea    -0x4(%ebp),%eax
422cef:	68 c4 cb 45 00       	push   $0x45cbc4
422cf4:	50                   	push   %eax
422cf5:	e8 26 f2 fd ff       	call   0x401f20
422cfa:	8b f0                	mov    %eax,%esi
422cfc:	83 c4 10             	add    $0x10,%esp
422cff:	85 f6                	test   %esi,%esi
422d01:	79 0a                	jns    0x422d0d
422d03:	68 e4 cb 45 00       	push   $0x45cbe4
422d08:	e9 04 01 00 00       	jmp    0x422e11
422d0d:	53                   	push   %ebx
422d0e:	ff 75 fc             	push   -0x4(%ebp)
422d11:	57                   	push   %edi
422d12:	e8 f2 f1 fd ff       	call   0x401f09
422d17:	8b f0                	mov    %eax,%esi
422d19:	85 f6                	test   %esi,%esi
422d1b:	78 ba                	js     0x422cd7
422d1d:	8b 45 f0             	mov    -0x10(%ebp),%eax
422d20:	85 c0                	test   %eax,%eax
422d22:	74 33                	je     0x422d57
422d24:	53                   	push   %ebx
422d25:	50                   	push   %eax
422d26:	8d 45 fc             	lea    -0x4(%ebp),%eax
422d29:	68 08 cc 45 00       	push   $0x45cc08
422d2e:	50                   	push   %eax
422d2f:	e8 ec f1 fd ff       	call   0x401f20
422d34:	8b f0                	mov    %eax,%esi
422d36:	83 c4 10             	add    $0x10,%esp
422d39:	85 f6                	test   %esi,%esi
422d3b:	79 0a                	jns    0x422d47
422d3d:	68 2c cc 45 00       	push   $0x45cc2c
422d42:	e9 ca 00 00 00       	jmp    0x422e11
422d47:	53                   	push   %ebx
422d48:	ff 75 fc             	push   -0x4(%ebp)
422d4b:	57                   	push   %edi
422d4c:	e8 b8 f1 fd ff       	call   0x401f09
422d51:	8b f0                	mov    %eax,%esi
422d53:	85 f6                	test   %esi,%esi
422d55:	78 80                	js     0x422cd7
422d57:	8b 45 ec             	mov    -0x14(%ebp),%eax
422d5a:	85 c0                	test   %eax,%eax
422d5c:	74 37                	je     0x422d95
422d5e:	53                   	push   %ebx
422d5f:	50                   	push   %eax
422d60:	8d 45 fc             	lea    -0x4(%ebp),%eax
422d63:	68 50 cc 45 00       	push   $0x45cc50