420b77:	5d                   	pop    %ebp
420b78:	c2 0c 00             	ret    $0xc
420b7b:	55                   	push   %ebp
420b7c:	8b ec                	mov    %esp,%ebp
420b7e:	51                   	push   %ecx
420b7f:	51                   	push   %ecx
420b80:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
420b84:	33 c0                	xor    %eax,%eax
420b86:	56                   	push   %esi
420b87:	8b 75 08             	mov    0x8(%ebp),%esi
420b8a:	57                   	push   %edi
420b8b:	8b 7d 0c             	mov    0xc(%ebp),%edi
420b8e:	2b fe                	sub    %esi,%edi
420b90:	89 4d f8             	mov    %ecx,-0x8(%ebp)
420b93:	3b 75 0c             	cmp    0xc(%ebp),%esi
420b96:	0f 47 f8             	cmova  %eax,%edi
420b99:	85 ff                	test   %edi,%edi
420b9b:	74 23                	je     0x420bc0
420b9d:	53                   	push   %ebx
420b9e:	8b 5d 10             	mov    0x10(%ebp),%ebx
420ba1:	0f b6 06             	movzbl (%esi),%eax
420ba4:	50                   	push   %eax
420ba5:	e8 ab 87 ff ff       	call   0x419355
420baa:	8b 4d f8             	mov    -0x8(%ebp),%ecx
420bad:	46                   	inc    %esi
420bae:	66 89 03             	mov    %ax,(%ebx)
420bb1:	8d 5b 02             	lea    0x2(%ebx),%ebx
420bb4:	8b 45 fc             	mov    -0x4(%ebp),%eax
420bb7:	40                   	inc    %eax
420bb8:	89 45 fc             	mov    %eax,-0x4(%ebp)
420bbb:	3b c7                	cmp    %edi,%eax
420bbd:	75 e2                	jne    0x420ba1
420bbf:	5b                   	pop    %ebx
420bc0:	5f                   	pop    %edi
420bc1:	8b c6                	mov    %esi,%eax
420bc3:	5e                   	pop    %esi
420bc4:	c9                   	leave
420bc5:	c2 0c 00             	ret    $0xc
420bc8:	55                   	push   %ebp
420bc9:	8b ec                	mov    %esp,%ebp
420bcb:	5d                   	pop    %ebp
420bcc:	e9 84 87 ff ff       	jmp    0x419355
420bd1:	55                   	push   %ebp
420bd2:	8b ec                	mov    %esp,%ebp
420bd4:	51                   	push   %ecx
420bd5:	51                   	push   %ecx
420bd6:	ff 71 0c             	push   0xc(%ecx)
420bd9:	8b 01                	mov    (%ecx),%eax
420bdb:	8d 4d f8             	lea    -0x8(%ebp),%ecx
420bde:	ff 75 08             	push   0x8(%ebp)
420be1:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
420be5:	89 45 f8             	mov    %eax,-0x8(%ebp)
420be8:	e8 03 f4 fe ff       	call   0x40fff0
420bed:	8b 45 08             	mov    0x8(%ebp),%eax
420bf0:	c9                   	leave
420bf1:	c2 04 00             	ret    $0x4
420bf4:	55                   	push   %ebp
420bf5:	8b ec                	mov    %esp,%ebp
420bf7:	56                   	push   %esi
420bf8:	8b 75 08             	mov    0x8(%ebp),%esi
420bfb:	57                   	push   %edi
420bfc:	8b f9                	mov    %ecx,%edi
420bfe:	80 7f 04 00          	cmpb   $0x0,0x4(%edi)
420c02:	75 05                	jne    0x420c09
420c04:	e8 8c b8 ff ff       	call   0x41c495
420c09:	80 7e 04 00          	cmpb   $0x0,0x4(%esi)
420c0d:	75 07                	jne    0x420c16
420c0f:	8b ce                	mov    %esi,%ecx
420c11:	e8 7f b8 ff ff       	call   0x41c495
420c16:	33 c0                	xor    %eax,%eax
420c18:	39 07                	cmp    %eax,(%edi)
420c1a:	75 06                	jne    0x420c22
420c1c:	39 06                	cmp    %eax,(%esi)
420c1e:	74 06                	je     0x420c26
420c20:	eb 06                	jmp    0x420c28
420c22:	39 06                	cmp    %eax,(%esi)
420c24:	74 02                	je     0x420c28
420c26:	b0 01                	mov    $0x1,%al
420c28:	5f                   	pop    %edi
420c29:	5e                   	pop    %esi
420c2a:	5d                   	pop    %ebp
420c2b:	c2 04 00             	ret    $0x4
420c2e:	55                   	push   %ebp
420c2f:	8b ec                	mov    %esp,%ebp
420c31:	8b 41 04             	mov    0x4(%ecx),%eax
420c34:	56                   	push   %esi
420c35:	8b 75 08             	mov    0x8(%ebp),%esi
420c38:	8b 56 04             	mov    0x4(%esi),%edx
420c3b:	3b 42 04             	cmp    0x4(%edx),%eax
420c3e:	75 0b                	jne    0x420c4b
420c40:	8b 06                	mov    (%esi),%eax
420c42:	3b 45 0c             	cmp    0xc(%ebp),%eax
420c45:	75 04                	jne    0x420c4b
420c47:	b0 01                	mov    $0x1,%al
420c49:	eb 02                	jmp    0x420c4d
420c4b:	32 c0                	xor    %al,%al
420c4d:	5e                   	pop    %esi
420c4e:	5d                   	pop    %ebp
420c4f:	c2 08 00             	ret    $0x8
420c52:	55                   	push   %ebp
420c53:	8b ec                	mov    %esp,%ebp
420c55:	51                   	push   %ecx
420c56:	51                   	push   %ecx
420c57:	ff 75 0c             	push   0xc(%ebp)
420c5a:	8b 01                	mov    (%ecx),%eax
420c5c:	8d 55 f8             	lea    -0x8(%ebp),%edx
420c5f:	ff 75 08             	push   0x8(%ebp)
420c62:	52                   	push   %edx
420c63:	ff 50 0c             	call   *0xc(%eax)
420c66:	50                   	push   %eax
420c67:	e8 cf f0 fe ff       	call   0x40fd3b
420c6c:	59                   	pop    %ecx
420c6d:	59                   	pop    %ecx
420c6e:	c9                   	leave
420c6f:	c2 08 00             	ret    $0x8
420c72:	55                   	push   %ebp
420c73:	8b ec                	mov    %esp,%ebp
420c75:	56                   	push   %esi
420c76:	8b f1                	mov    %ecx,%esi
420c78:	57                   	push   %edi
420c79:	8b c6                	mov    %esi,%eax
420c7b:	83 7e 14 08          	cmpl   $0x8,0x14(%esi)
420c7f:	72 02                	jb     0x420c83
420c81:	8b 06                	mov    (%esi),%eax
420c83:	8b 7d 0c             	mov    0xc(%ebp),%edi
420c86:	2b f8                	sub    %eax,%edi
420c88:	6a 01                	push   $0x1
420c8a:	d1 ff                	sar    $1,%edi
420c8c:	57                   	push   %edi
420c8d:	e8 37 00 00 00       	call   0x420cc9
420c92:	83 7e 14 08          	cmpl   $0x8,0x14(%esi)
420c96:	72 02                	jb     0x420c9a
420c98:	8b 36                	mov    (%esi),%esi
420c9a:	8b 45 08             	mov    0x8(%ebp),%eax
420c9d:	8d 0c 7e             	lea    (%esi,%edi,2),%ecx
420ca0:	5f                   	pop    %edi
420ca1:	5e                   	pop    %esi
420ca2:	89 08                	mov    %ecx,(%eax)
420ca4:	5d                   	pop    %ebp
420ca5:	c2 08 00             	ret    $0x8
420ca8:	55                   	push   %ebp
420ca9:	8b ec                	mov    %esp,%ebp
420cab:	8b 45 08             	mov    0x8(%ebp),%eax
420cae:	56                   	push   %esi
420caf:	8b f1                	mov    %ecx,%esi
420cb1:	39 46 10             	cmp    %eax,0x10(%esi)
420cb4:	72 0d                	jb     0x420cc3
420cb6:	50                   	push   %eax
420cb7:	e8 9f 88 ff ff       	call   0x41955b
420cbc:	8b c6                	mov    %esi,%eax
420cbe:	5e                   	pop    %esi
420cbf:	5d                   	pop    %ebp
420cc0:	c2 04 00             	ret    $0x4
420cc3:	e8 0a cb ff ff       	call   0x41d7d2
420cc8:	cc                   	int3
420cc9:	55                   	push   %ebp
420cca:	8b ec                	mov    %esp,%ebp
420ccc:	53                   	push   %ebx
420ccd:	56                   	push   %esi
420cce:	8b f1                	mov    %ecx,%esi
420cd0:	57                   	push   %edi
420cd1:	8b 7d 08             	mov    0x8(%ebp),%edi
420cd4:	8b 56 10             	mov    0x10(%esi),%edx
420cd7:	3b d7                	cmp    %edi,%edx
420cd9:	72 3e                	jb     0x420d19
420cdb:	8b 5d 0c             	mov    0xc(%ebp),%ebx
420cde:	8b c2                	mov    %edx,%eax
420ce0:	2b c7                	sub    %edi,%eax
420ce2:	3b c3                	cmp    %ebx,%eax
420ce4:	0f 42 d8             	cmovb  %eax,%ebx
420ce7:	83 7e 14 08          	cmpl   $0x8,0x14(%esi)
420ceb:	8b c6                	mov    %esi,%eax
420ced:	72 02                	jb     0x420cf1
420cef:	8b 06                	mov    (%esi),%eax
420cf1:	2b d3                	sub    %ebx,%edx
420cf3:	8d 0c 78             	lea    (%eax,%edi,2),%ecx
420cf6:	89 56 10             	mov    %edx,0x10(%esi)
420cf9:	2b d7                	sub    %edi,%edx
420cfb:	8d 04 55 02 00 00 00 	lea    0x2(,%edx,2),%eax
420d02:	50                   	push   %eax
420d03:	8d 04 59             	lea    (%ecx,%ebx,2),%eax
420d06:	50                   	push   %eax
420d07:	51                   	push   %ecx
420d08:	e8 d3 2b 02 00       	call   0x4438e0
420d0d:	83 c4 0c             	add    $0xc,%esp
420d10:	8b c6                	mov    %esi,%eax
420d12:	5f                   	pop    %edi
420d13:	5e                   	pop    %esi
420d14:	5b                   	pop    %ebx
420d15:	5d                   	pop    %ebp
420d16:	c2 08 00             	ret    $0x8
420d19:	e8 b4 ca ff ff       	call   0x41d7d2
420d1e:	cc                   	int3
420d1f:	55                   	push   %ebp
420d20:	8b ec                	mov    %esp,%ebp
420d22:	51                   	push   %ecx
420d23:	51                   	push   %ecx
420d24:	56                   	push   %esi
420d25:	8b 75 0c             	mov    0xc(%ebp),%esi
420d28:	57                   	push   %edi
420d29:	8b f9                	mov    %ecx,%edi
420d2b:	3b 75 10             	cmp    0x10(%ebp),%esi
420d2e:	74 26                	je     0x420d56
420d30:	8d 45 f8             	lea    -0x8(%ebp),%eax
420d33:	50                   	push   %eax
420d34:	8d 45 f8             	lea    -0x8(%ebp),%eax
420d37:	50                   	push   %eax
420d38:	8d 45 ff             	lea    -0x1(%ebp),%eax
420d3b:	50                   	push   %eax
420d3c:	e8 81 3d fe ff       	call   0x404ac2
420d41:	56                   	push   %esi
420d42:	ff 77 04             	push   0x4(%edi)
420d45:	ff 75 10             	push   0x10(%ebp)
420d48:	e8 75 25 fe ff       	call   0x4032c2
420d4d:	8b 75 0c             	mov    0xc(%ebp),%esi
420d50:	83 c4 18             	add    $0x18,%esp
420d53:	89 47 04             	mov    %eax,0x4(%edi)
420d56:	8b 45 08             	mov    0x8(%ebp),%eax
420d59:	5f                   	pop    %edi
420d5a:	89 30                	mov    %esi,(%eax)
420d5c:	5e                   	pop    %esi
420d5d:	c9                   	leave
420d5e:	c2 0c 00             	ret    $0xc
420d61:	55                   	push   %ebp
420d62:	8b ec                	mov    %esp,%ebp
420d64:	83 ec 18             	sub    $0x18,%esp
420d67:	56                   	push   %esi
420d68:	57                   	push   %edi
420d69:	ff 75 10             	push   0x10(%ebp)
420d6c:	8d 45 f8             	lea    -0x8(%ebp),%eax
420d6f:	8b f9                	mov    %ecx,%edi
420d71:	ff 75 0c             	push   0xc(%ebp)
420d74:	50                   	push   %eax
420d75:	e8 42 a9 ff ff       	call   0x41b6bc
420d7a:	ff 75 18             	push   0x18(%ebp)
420d7d:	8d 45 f0             	lea    -0x10(%ebp),%eax
420d80:	8b cf                	mov    %edi,%ecx
420d82:	ff 75 14             	push   0x14(%ebp)
420d85:	50                   	push   %eax
420d86:	e8 31 a9 ff ff       	call   0x41b6bc
420d8b:	8b 75 f8             	mov    -0x8(%ebp),%esi
420d8e:	8b 07                	mov    (%edi),%eax
420d90:	2b f0                	sub    %eax,%esi
420d92:	8b 4d f0             	mov    -0x10(%ebp),%ecx
420d95:	c1 fe 02             	sar    $0x2,%esi
420d98:	c1 e6 05             	shl    $0x5,%esi
420d9b:	03 75 fc             	add    -0x4(%ebp),%esi
420d9e:	39 4d f8             	cmp    %ecx,-0x8(%ebp)
420da1:	75 08                	jne    0x420dab
420da3:	8b 4d f4             	mov    -0xc(%ebp),%ecx
420da6:	39 4d fc             	cmp    %ecx,-0x4(%ebp)
420da9:	74 40                	je     0x420deb
420dab:	8d 45 e8             	lea    -0x18(%ebp),%eax
420dae:	8b cf                	mov    %edi,%ecx
420db0:	50                   	push   %eax
420db1:	e8 1b fe ff ff       	call   0x420bd1
420db6:	ff 75 fc             	push   -0x4(%ebp)
420db9:	ff 75 f8             	push   -0x8(%ebp)
420dbc:	ff 70 04             	push   0x4(%eax)
420dbf:	ff 30                	push   (%eax)
420dc1:	8d 45 f0             	lea    -0x10(%ebp),%eax
420dc4:	ff 75 f4             	push   -0xc(%ebp)
420dc7:	ff 75 f0             	push   -0x10(%ebp)
420dca:	50                   	push   %eax
420dcb:	e8 ac 5e fe ff       	call   0x406c7c
420dd0:	8b 45 f0             	mov    -0x10(%ebp),%eax
420dd3:	83 c4 1c             	add    $0x1c,%esp
420dd6:	2b 07                	sub    (%edi),%eax
420dd8:	8b cf                	mov    %edi,%ecx
420dda:	c1 f8 02             	sar    $0x2,%eax
420ddd:	c1 e0 05             	shl    $0x5,%eax
420de0:	03 45 f4             	add    -0xc(%ebp),%eax
420de3:	50                   	push   %eax
420de4:	e8 81 c7 ff ff       	call   0x41d56a
420de9:	8b 07                	mov    (%edi),%eax
420deb:	83 65 10 00          	andl   $0x0,0x10(%ebp)
420def:	8d 4d 0c             	lea    0xc(%ebp),%ecx
420df2:	56                   	push   %esi
420df3:	ff 75 08             	push   0x8(%ebp)
420df6:	89 45 0c             	mov    %eax,0xc(%ebp)
420df9:	e8 f2 f1 fe ff       	call   0x40fff0
420dfe:	8b 45 08             	mov    0x8(%ebp),%eax
420e01:	5f                   	pop    %edi
420e02:	5e                   	pop    %esi
420e03:	c9                   	leave
420e04:	c2 14 00             	ret    $0x14
420e07:	8b 41 04             	mov    0x4(%ecx),%eax
420e0a:	85 c0                	test   %eax,%eax
420e0c:	74 05                	je     0x420e13
420e0e:	8b 40 04             	mov    0x4(%eax),%eax
420e11:	eb 02                	jmp    0x420e15
420e13:	33 c0                	xor    %eax,%eax
420e15:	85 c0                	test   %eax,%eax
420e17:	0f 94 c0             	sete   %al
420e1a:	c3                   	ret
420e1b:	6a 04                	push   $0x4
420e1d:	b8 61 fc 48 00       	mov    $0x48fc61,%eax
420e22:	e8 23 ec 01 00       	call   0x43fa4a
420e27:	83 65 f0 00          	andl   $0x0,-0x10(%ebp)
420e2b:	8b 01                	mov    (%ecx),%eax
420e2d:	ff 75 08             	push   0x8(%ebp)
420e30:	ff 50 18             	call   *0x18(%eax)
420e33:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
420e37:	c7 45 f0 01 00 00 00 	movl   $0x1,-0x10(%ebp)
420e3e:	8b 45 08             	mov    0x8(%ebp),%eax
420e41:	e8 cd eb 01 00       	call   0x43fa13
420e46:	c2 04 00             	ret    $0x4
420e49:	55                   	push   %ebp
420e4a:	8b ec                	mov    %esp,%ebp
420e4c:	8a 45 14             	mov    0x14(%ebp),%al
420e4f:	53                   	push   %ebx
420e50:	8b 5d 10             	mov    0x10(%ebp),%ebx
420e53:	56                   	push   %esi
420e54:	8b 75 08             	mov    0x8(%ebp),%esi
420e57:	57                   	push   %edi
420e58:	8b 7d 0c             	mov    0xc(%ebp),%edi
420e5b:	2b fb                	sub    %ebx,%edi
420e5d:	88 45 17             	mov    %al,0x17(%ebp)
420e60:	8d 45 17             	lea    0x17(%ebp),%eax
420e63:	89 7d 0c             	mov    %edi,0xc(%ebp)
420e66:	50                   	push   %eax
420e67:	d1 ef                	shr    $1,%edi
420e69:	57                   	push   %edi
420e6a:	56                   	push   %esi
420e6b:	e8 d8 7c fe ff       	call   0x408b48
420e70:	8d 45 17             	lea    0x17(%ebp),%eax
420e73:	03 f7                	add    %edi,%esi
420e75:	50                   	push   %eax
420e76:	8b 45 0c             	mov    0xc(%ebp),%eax
420e79:	2b c7                	sub    %edi,%eax
420e7b:	50                   	push   %eax
420e7c:	8d 0c 1e             	lea    (%esi,%ebx,1),%ecx
420e7f:	51                   	push   %ecx
420e80:	e8 c3 7c fe ff       	call   0x408b48
420e85:	83 c4 18             	add    $0x18,%esp
420e88:	8b c6                	mov    %esi,%eax
420e8a:	5f                   	pop    %edi
420e8b:	5e                   	pop    %esi
420e8c:	5b                   	pop    %ebx
420e8d:	5d                   	pop    %ebp
420e8e:	c3                   	ret
420e8f:	55                   	push   %ebp
420e90:	8b ec                	mov    %esp,%ebp
420e92:	51                   	push   %ecx
420e93:	51                   	push   %ecx
420e94:	56                   	push   %esi
420e95:	57                   	push   %edi
420e96:	8b f9                	mov    %ecx,%edi
420e98:	8b 37                	mov    (%edi),%esi
420e9a:	eb 22                	jmp    0x420ebe