4319bc:	5f                   	pop    %edi
4319bd:	5e                   	pop    %esi
4319be:	5b                   	pop    %ebx
4319bf:	c9                   	leave
4319c0:	c2 08 00             	ret    $0x8
4319c3:	8b ff                	mov    %edi,%edi
4319c5:	55                   	push   %ebp
4319c6:	8b ec                	mov    %esp,%ebp
4319c8:	51                   	push   %ecx
4319c9:	53                   	push   %ebx
4319ca:	56                   	push   %esi
4319cb:	8b 75 10             	mov    0x10(%ebp),%esi
4319ce:	8b d9                	mov    %ecx,%ebx
4319d0:	33 c9                	xor    %ecx,%ecx
4319d2:	89 5d fc             	mov    %ebx,-0x4(%ebp)
4319d5:	57                   	push   %edi
4319d6:	8b f9                	mov    %ecx,%edi
4319d8:	38 0e                	cmp    %cl,(%esi)
4319da:	0f 84 60 01 00 00    	je     0x431b40
4319e0:	8b 55 08             	mov    0x8(%ebp),%edx
4319e3:	8b 12                	mov    (%edx),%edx
4319e5:	8b 42 10             	mov    0x10(%edx),%eax
4319e8:	2b c1                	sub    %ecx,%eax
4319ea:	0f 84 47 01 00 00    	je     0x431b37
4319f0:	83 e8 01             	sub    $0x1,%eax
4319f3:	0f 84 39 01 00 00    	je     0x431b32
4319f9:	83 e8 01             	sub    $0x1,%eax
4319fc:	74 0a                	je     0x431a08
4319fe:	bf 07 00 00 80       	mov    $0x80000007,%edi
431a03:	e9 38 01 00 00       	jmp    0x431b40
431a08:	8b 4d 0c             	mov    0xc(%ebp),%ecx
431a0b:	8b 41 10             	mov    0x10(%ecx),%eax
431a0e:	83 e8 00             	sub    $0x0,%eax
431a11:	0f 84 d2 00 00 00    	je     0x431ae9
431a17:	83 e8 01             	sub    $0x1,%eax
431a1a:	74 3b                	je     0x431a57
431a1c:	83 e8 01             	sub    $0x1,%eax
431a1f:	75 dd                	jne    0x4319fe
431a21:	8b 72 0c             	mov    0xc(%edx),%esi
431a24:	85 f6                	test   %esi,%esi
431a26:	74 0f                	je     0x431a37
431a28:	39 56 04             	cmp    %edx,0x4(%esi)
431a2b:	75 05                	jne    0x431a32
431a2d:	89 4e 04             	mov    %ecx,0x4(%esi)
431a30:	eb 07                	jmp    0x431a39
431a32:	89 4e 08             	mov    %ecx,0x8(%esi)
431a35:	eb 02                	jmp    0x431a39
431a37:	89 0b                	mov    %ecx,(%ebx)
431a39:	8b 41 04             	mov    0x4(%ecx),%eax
431a3c:	85 c0                	test   %eax,%eax
431a3e:	74 03                	je     0x431a43
431a40:	89 50 0c             	mov    %edx,0xc(%eax)
431a43:	21 7a 10             	and    %edi,0x10(%edx)
431a46:	8b 41 04             	mov    0x4(%ecx),%eax
431a49:	89 42 08             	mov    %eax,0x8(%edx)
431a4c:	89 4a 0c             	mov    %ecx,0xc(%edx)
431a4f:	21 79 10             	and    %edi,0x10(%ecx)
431a52:	e9 ce 00 00 00       	jmp    0x431b25
431a57:	8b 42 08             	mov    0x8(%edx),%eax
431a5a:	8b 5a 0c             	mov    0xc(%edx),%ebx
431a5d:	8b 70 04             	mov    0x4(%eax),%esi
431a60:	85 db                	test   %ebx,%ebx
431a62:	74 0f                	je     0x431a73
431a64:	39 53 04             	cmp    %edx,0x4(%ebx)
431a67:	75 05                	jne    0x431a6e
431a69:	89 73 04             	mov    %esi,0x4(%ebx)
431a6c:	eb 0a                	jmp    0x431a78
431a6e:	89 73 08             	mov    %esi,0x8(%ebx)
431a71:	eb 05                	jmp    0x431a78
431a73:	8b 45 fc             	mov    -0x4(%ebp),%eax
431a76:	89 30                	mov    %esi,(%eax)
431a78:	89 72 0c             	mov    %esi,0xc(%edx)
431a7b:	89 71 0c             	mov    %esi,0xc(%ecx)
431a7e:	8b 46 04             	mov    0x4(%esi),%eax
431a81:	85 c0                	test   %eax,%eax
431a83:	74 03                	je     0x431a88
431a85:	89 50 0c             	mov    %edx,0xc(%eax)
431a88:	8b 46 08             	mov    0x8(%esi),%eax
431a8b:	85 c0                	test   %eax,%eax
431a8d:	74 03                	je     0x431a92
431a8f:	89 48 0c             	mov    %ecx,0xc(%eax)
431a92:	8b 46 04             	mov    0x4(%esi),%eax
431a95:	89 42 08             	mov    %eax,0x8(%edx)
431a98:	8b 46 08             	mov    0x8(%esi),%eax
431a9b:	89 41 04             	mov    %eax,0x4(%ecx)
431a9e:	8b 46 10             	mov    0x10(%esi),%eax
431aa1:	89 5e 0c             	mov    %ebx,0xc(%esi)
431aa4:	33 db                	xor    %ebx,%ebx
431aa6:	89 56 04             	mov    %edx,0x4(%esi)
431aa9:	89 4e 08             	mov    %ecx,0x8(%esi)
431aac:	2b c3                	sub    %ebx,%eax
431aae:	74 29                	je     0x431ad9
431ab0:	83 e8 01             	sub    $0x1,%eax
431ab3:	74 18                	je     0x431acd
431ab5:	83 e8 01             	sub    $0x1,%eax
431ab8:	74 07                	je     0x431ac1
431aba:	bf 07 00 00 80       	mov    $0x80000007,%edi
431abf:	eb 1e                	jmp    0x431adf
431ac1:	89 59 10             	mov    %ebx,0x10(%ecx)
431ac4:	c7 42 10 01 00 00 00 	movl   $0x1,0x10(%edx)
431acb:	eb 12                	jmp    0x431adf
431acd:	89 5a 10             	mov    %ebx,0x10(%edx)
431ad0:	c7 41 10 02 00 00 00 	movl   $0x2,0x10(%ecx)
431ad7:	eb 06                	jmp    0x431adf
431ad9:	89 59 10             	mov    %ebx,0x10(%ecx)
431adc:	89 5a 10             	mov    %ebx,0x10(%edx)
431adf:	8b 45 08             	mov    0x8(%ebp),%eax
431ae2:	89 5e 10             	mov    %ebx,0x10(%esi)
431ae5:	89 30                	mov    %esi,(%eax)
431ae7:	eb 57                	jmp    0x431b40
431ae9:	c6 06 00             	movb   $0x0,(%esi)
431aec:	8b 72 0c             	mov    0xc(%edx),%esi
431aef:	85 f6                	test   %esi,%esi
431af1:	74 0f                	je     0x431b02
431af3:	39 56 04             	cmp    %edx,0x4(%esi)
431af6:	75 05                	jne    0x431afd
431af8:	89 4e 04             	mov    %ecx,0x4(%esi)
431afb:	eb 07                	jmp    0x431b04
431afd:	89 4e 08             	mov    %ecx,0x8(%esi)
431b00:	eb 02                	jmp    0x431b04
431b02:	89 0b                	mov    %ecx,(%ebx)
431b04:	8b 41 04             	mov    0x4(%ecx),%eax
431b07:	85 c0                	test   %eax,%eax
431b09:	74 03                	je     0x431b0e
431b0b:	89 50 0c             	mov    %edx,0xc(%eax)
431b0e:	c7 42 10 02 00 00 00 	movl   $0x2,0x10(%edx)
431b15:	8b 41 04             	mov    0x4(%ecx),%eax
431b18:	89 42 08             	mov    %eax,0x8(%edx)
431b1b:	89 4a 0c             	mov    %ecx,0xc(%edx)
431b1e:	c7 41 10 01 00 00 00 	movl   $0x1,0x10(%ecx)
431b25:	8b 45 08             	mov    0x8(%ebp),%eax
431b28:	89 51 04             	mov    %edx,0x4(%ecx)
431b2b:	89 71 0c             	mov    %esi,0xc(%ecx)
431b2e:	89 08                	mov    %ecx,(%eax)
431b30:	eb 0e                	jmp    0x431b40
431b32:	89 4a 10             	mov    %ecx,0x10(%edx)
431b35:	eb 09                	jmp    0x431b40
431b37:	c7 42 10 02 00 00 00 	movl   $0x2,0x10(%edx)
431b3e:	88 0e                	mov    %cl,(%esi)
431b40:	8b c7                	mov    %edi,%eax
431b42:	5f                   	pop    %edi
431b43:	5e                   	pop    %esi
431b44:	5b                   	pop    %ebx
431b45:	c9                   	leave
431b46:	c2 0c 00             	ret    $0xc
431b49:	8b ff                	mov    %edi,%edi
431b4b:	55                   	push   %ebp
431b4c:	8b ec                	mov    %esp,%ebp
431b4e:	51                   	push   %ecx
431b4f:	53                   	push   %ebx
431b50:	56                   	push   %esi
431b51:	8b 75 10             	mov    0x10(%ebp),%esi
431b54:	8b d9                	mov    %ecx,%ebx
431b56:	33 c9                	xor    %ecx,%ecx
431b58:	57                   	push   %edi
431b59:	8b f9                	mov    %ecx,%edi
431b5b:	38 0e                	cmp    %cl,(%esi)
431b5d:	0f 84 66 01 00 00    	je     0x431cc9
431b63:	8b 55 08             	mov    0x8(%ebp),%edx
431b66:	8b 12                	mov    (%edx),%edx
431b68:	8b 42 10             	mov    0x10(%edx),%eax
431b6b:	2b c1                	sub    %ecx,%eax
431b6d:	0f 84 4d 01 00 00    	je     0x431cc0
431b73:	83 e8 01             	sub    $0x1,%eax
431b76:	74 17                	je     0x431b8f
431b78:	83 e8 01             	sub    $0x1,%eax
431b7b:	74 0a                	je     0x431b87
431b7d:	bf 07 00 00 80       	mov    $0x80000007,%edi
431b82:	e9 42 01 00 00       	jmp    0x431cc9
431b87:	89 4a 10             	mov    %ecx,0x10(%edx)
431b8a:	e9 3a 01 00 00       	jmp    0x431cc9
431b8f:	8b 4d 0c             	mov    0xc(%ebp),%ecx
431b92:	8b 41 10             	mov    0x10(%ecx),%eax
431b95:	83 e8 00             	sub    $0x0,%eax
431b98:	0f 84 d9 00 00 00    	je     0x431c77
431b9e:	83 e8 01             	sub    $0x1,%eax
431ba1:	0f 84 9d 00 00 00    	je     0x431c44
431ba7:	83 e8 01             	sub    $0x1,%eax
431baa:	75 d1                	jne    0x431b7d
431bac:	8b 42 04             	mov    0x4(%edx),%eax
431baf:	8b 70 08             	mov    0x8(%eax),%esi
431bb2:	8b 42 0c             	mov    0xc(%edx),%eax
431bb5:	89 45 fc             	mov    %eax,-0x4(%ebp)
431bb8:	85 c0                	test   %eax,%eax
431bba:	74 0f                	je     0x431bcb
431bbc:	39 50 04             	cmp    %edx,0x4(%eax)
431bbf:	75 05                	jne    0x431bc6
431bc1:	89 70 04             	mov    %esi,0x4(%eax)
431bc4:	eb 07                	jmp    0x431bcd
431bc6:	89 70 08             	mov    %esi,0x8(%eax)
431bc9:	eb 02                	jmp    0x431bcd
431bcb:	89 33                	mov    %esi,(%ebx)
431bcd:	89 72 0c             	mov    %esi,0xc(%edx)
431bd0:	89 71 0c             	mov    %esi,0xc(%ecx)
431bd3:	8b 46 04             	mov    0x4(%esi),%eax
431bd6:	85 c0                	test   %eax,%eax
431bd8:	74 03                	je     0x431bdd
431bda:	89 48 0c             	mov    %ecx,0xc(%eax)
431bdd:	8b 46 08             	mov    0x8(%esi),%eax
431be0:	85 c0                	test   %eax,%eax
431be2:	74 06                	je     0x431bea
431be4:	89 50 0c             	mov    %edx,0xc(%eax)
431be7:	8b 46 08             	mov    0x8(%esi),%eax
431bea:	89 42 04             	mov    %eax,0x4(%edx)
431bed:	33 db                	xor    %ebx,%ebx
431bef:	8b 46 04             	mov    0x4(%esi),%eax
431bf2:	89 41 08             	mov    %eax,0x8(%ecx)
431bf5:	8b 45 fc             	mov    -0x4(%ebp),%eax
431bf8:	89 46 0c             	mov    %eax,0xc(%esi)
431bfb:	8b 46 10             	mov    0x10(%esi),%eax
431bfe:	89 4e 04             	mov    %ecx,0x4(%esi)
431c01:	89 56 08             	mov    %edx,0x8(%esi)
431c04:	2b c3                	sub    %ebx,%eax
431c06:	74 29                	je     0x431c31
431c08:	83 e8 01             	sub    $0x1,%eax
431c0b:	74 18                	je     0x431c25
431c0d:	83 e8 01             	sub    $0x1,%eax
431c10:	74 07                	je     0x431c19
431c12:	bf 07 00 00 80       	mov    $0x80000007,%edi
431c17:	eb 1e                	jmp    0x431c37
431c19:	89 5a 10             	mov    %ebx,0x10(%edx)
431c1c:	c7 41 10 01 00 00 00 	movl   $0x1,0x10(%ecx)
431c23:	eb 12                	jmp    0x431c37
431c25:	89 59 10             	mov    %ebx,0x10(%ecx)
431c28:	c7 42 10 02 00 00 00 	movl   $0x2,0x10(%edx)
431c2f:	eb 06                	jmp    0x431c37
431c31:	89 59 10             	mov    %ebx,0x10(%ecx)
431c34:	89 5a 10             	mov    %ebx,0x10(%edx)
431c37:	8b 45 08             	mov    0x8(%ebp),%eax
431c3a:	89 5e 10             	mov    %ebx,0x10(%esi)
431c3d:	89 30                	mov    %esi,(%eax)
431c3f:	e9 85 00 00 00       	jmp    0x431cc9
431c44:	8b 72 0c             	mov    0xc(%edx),%esi
431c47:	85 f6                	test   %esi,%esi
431c49:	74 0f                	je     0x431c5a
431c4b:	39 56 04             	cmp    %edx,0x4(%esi)
431c4e:	75 05                	jne    0x431c55
431c50:	89 4e 04             	mov    %ecx,0x4(%esi)
431c53:	eb 07                	jmp    0x431c5c
431c55:	89 4e 08             	mov    %ecx,0x8(%esi)
431c58:	eb 02                	jmp    0x431c5c
431c5a:	89 0b                	mov    %ecx,(%ebx)
431c5c:	8b 41 08             	mov    0x8(%ecx),%eax
431c5f:	85 c0                	test   %eax,%eax
431c61:	74 03                	je     0x431c66
431c63:	89 50 0c             	mov    %edx,0xc(%eax)
431c66:	21 7a 10             	and    %edi,0x10(%edx)
431c69:	8b 41 08             	mov    0x8(%ecx),%eax
431c6c:	89 42 04             	mov    %eax,0x4(%edx)
431c6f:	89 4a 0c             	mov    %ecx,0xc(%edx)
431c72:	21 79 10             	and    %edi,0x10(%ecx)
431c75:	eb 3c                	jmp    0x431cb3
431c77:	c6 06 00             	movb   $0x0,(%esi)
431c7a:	8b 72 0c             	mov    0xc(%edx),%esi
431c7d:	85 f6                	test   %esi,%esi
431c7f:	74 0f                	je     0x431c90
431c81:	39 56 04             	cmp    %edx,0x4(%esi)
431c84:	75 05                	jne    0x431c8b
431c86:	89 4e 04             	mov    %ecx,0x4(%esi)
431c89:	eb 07                	jmp    0x431c92
431c8b:	89 4e 08             	mov    %ecx,0x8(%esi)
431c8e:	eb 02                	jmp    0x431c92
431c90:	89 0b                	mov    %ecx,(%ebx)
431c92:	8b 41 08             	mov    0x8(%ecx),%eax
431c95:	85 c0                	test   %eax,%eax
431c97:	74 03                	je     0x431c9c
431c99:	89 50 0c             	mov    %edx,0xc(%eax)
431c9c:	c7 42 10 01 00 00 00 	movl   $0x1,0x10(%edx)
431ca3:	8b 41 08             	mov    0x8(%ecx),%eax
431ca6:	89 42 04             	mov    %eax,0x4(%edx)
431ca9:	89 4a 0c             	mov    %ecx,0xc(%edx)
431cac:	c7 41 10 02 00 00 00 	movl   $0x2,0x10(%ecx)
431cb3:	8b 45 08             	mov    0x8(%ebp),%eax
431cb6:	89 51 08             	mov    %edx,0x8(%ecx)
431cb9:	89 71 0c             	mov    %esi,0xc(%ecx)
431cbc:	89 08                	mov    %ecx,(%eax)
431cbe:	eb 09                	jmp    0x431cc9
431cc0:	c7 42 10 01 00 00 00 	movl   $0x1,0x10(%edx)
431cc7:	88 0e                	mov    %cl,(%esi)
431cc9:	8b c7                	mov    %edi,%eax
431ccb:	5f                   	pop    %edi
431ccc:	5e                   	pop    %esi
431ccd:	5b                   	pop    %ebx
431cce:	c9                   	leave
431ccf:	c2 0c 00             	ret    $0xc
431cd2:	8b ff                	mov    %edi,%edi
431cd4:	55                   	push   %ebp
431cd5:	8b ec                	mov    %esp,%ebp
431cd7:	8b 11                	mov    (%ecx),%edx
431cd9:	eb 16                	jmp    0x431cf1
431cdb:	8b 4d 08             	mov    0x8(%ebp),%ecx
431cde:	e8 d5 49 fe ff       	call   0x4166b8
431ce3:	85 c0                	test   %eax,%eax
431ce5:	74 17                	je     0x431cfe
431ce7:	79 05                	jns    0x431cee
431ce9:	8b 52 04             	mov    0x4(%edx),%edx
431cec:	eb 03                	jmp    0x431cf1
431cee:	8b 52 08             	mov    0x8(%edx),%edx
431cf1:	85 d2                	test   %edx,%edx
431cf3:	75 e6                	jne    0x431cdb
431cf5:	b8 08 00 00 80       	mov    $0x80000008,%eax
431cfa:	5d                   	pop    %ebp
431cfb:	c2 08 00             	ret    $0x8
431cfe:	8b 45 0c             	mov    0xc(%ebp),%eax
431d01:	89 10                	mov    %edx,(%eax)
431d03:	33 c0                	xor    %eax,%eax
431d05:	eb f3                	jmp    0x431cfa
431d07:	8b ff                	mov    %edi,%edi
431d09:	55                   	push   %ebp
431d0a:	8b ec                	mov    %esp,%ebp
431d0c:	56                   	push   %esi
431d0d:	8b 31                	mov    (%ecx),%esi
431d0f:	eb 1c                	jmp    0x431d2d
431d11:	6a 10                	push   $0x10
431d13:	56                   	push   %esi
431d14:	ff 75 08             	push   0x8(%ebp)
431d17:	e8 4e 05 ff ff       	call   0x42226a
431d1c:	83 c4 0c             	add    $0xc,%esp
431d1f:	85 c0                	test   %eax,%eax
431d21:	74 18                	je     0x431d3b
431d23:	79 05                	jns    0x431d2a
431d25:	8b 76 10             	mov    0x10(%esi),%esi
431d28:	eb 03                	jmp    0x431d2d
431d2a:	8b 76 14             	mov    0x14(%esi),%esi
431d2d:	85 f6                	test   %esi,%esi
431d2f:	75 e0                	jne    0x431d11
431d31:	b8 08 00 00 80       	mov    $0x80000008,%eax
431d36:	5e                   	pop    %esi
431d37:	5d                   	pop    %ebp
431d38:	c2 08 00             	ret    $0x8
431d3b:	8b 45 0c             	mov    0xc(%ebp),%eax
431d3e:	89 30                	mov    %esi,(%eax)
431d40:	33 c0                	xor    %eax,%eax
431d42:	eb f2                	jmp    0x431d36
431d44:	cc                   	int3
431d45:	cc                   	int3
431d46:	cc                   	int3
431d47:	cc                   	int3
431d48:	cc                   	int3
431d49:	cc                   	int3
431d4a:	cc                   	int3
431d4b:	cc                   	int3
431d4c:	cc                   	int3
431d4d:	cc                   	int3
431d4e:	cc                   	int3
431d4f:	cc                   	int3
431d50:	8b ff                	mov    %edi,%edi
431d52:	55                   	push   %ebp
431d53:	8b ec                	mov    %esp,%ebp
431d55:	53                   	push   %ebx