4209ac:	8b c6                	mov    %esi,%eax
4209ae:	5e                   	pop    %esi
4209af:	5b                   	pop    %ebx
4209b0:	5d                   	pop    %ebp
4209b1:	c2 08 00             	ret    $0x8
4209b4:	55                   	push   %ebp
4209b5:	8b ec                	mov    %esp,%ebp
4209b7:	53                   	push   %ebx
4209b8:	56                   	push   %esi
4209b9:	8b 75 08             	mov    0x8(%ebp),%esi
4209bc:	33 db                	xor    %ebx,%ebx
4209be:	57                   	push   %edi
4209bf:	8b 7d 0c             	mov    0xc(%ebp),%edi
4209c2:	33 c0                	xor    %eax,%eax
4209c4:	2b fe                	sub    %esi,%edi
4209c6:	47                   	inc    %edi
4209c7:	d1 ef                	shr    $1,%edi
4209c9:	3b 75 0c             	cmp    0xc(%ebp),%esi
4209cc:	0f 47 f8             	cmova  %eax,%edi
4209cf:	85 ff                	test   %edi,%edi
4209d1:	74 20                	je     0x4209f3
4209d3:	8d 41 08             	lea    0x8(%ecx),%eax
4209d6:	89 45 0c             	mov    %eax,0xc(%ebp)
4209d9:	50                   	push   %eax
4209da:	0f b7 06             	movzwl (%esi),%eax
4209dd:	50                   	push   %eax
4209de:	e8 10 5c 00 00       	call   0x4265f3
4209e3:	66 89 06             	mov    %ax,(%esi)
4209e6:	83 c6 02             	add    $0x2,%esi
4209e9:	8b 45 0c             	mov    0xc(%ebp),%eax
4209ec:	43                   	inc    %ebx
4209ed:	59                   	pop    %ecx
4209ee:	59                   	pop    %ecx
4209ef:	3b df                	cmp    %edi,%ebx
4209f1:	75 e6                	jne    0x4209d9
4209f3:	5f                   	pop    %edi
4209f4:	8b c6                	mov    %esi,%eax
4209f6:	5e                   	pop    %esi
4209f7:	5b                   	pop    %ebx
4209f8:	5d                   	pop    %ebp
4209f9:	c2 08 00             	ret    $0x8
4209fc:	55                   	push   %ebp
4209fd:	8b ec                	mov    %esp,%ebp
4209ff:	8d 41 08             	lea    0x8(%ecx),%eax
420a02:	50                   	push   %eax
420a03:	ff 75 08             	push   0x8(%ebp)
420a06:	e8 e8 5b 00 00       	call   0x4265f3
420a0b:	59                   	pop    %ecx
420a0c:	59                   	pop    %ecx
420a0d:	5d                   	pop    %ebp
420a0e:	c2 04 00             	ret    $0x4
420a11:	6a 04                	push   $0x4
420a13:	b8 c5 fb 48 00       	mov    $0x48fbc5,%eax
420a18:	e8 2d f0 01 00       	call   0x43fa4a
420a1d:	33 db                	xor    %ebx,%ebx
420a1f:	89 5d fc             	mov    %ebx,-0x4(%ebp)
420a22:	89 5d f0             	mov    %ebx,-0x10(%ebp)
420a25:	8b 75 08             	mov    0x8(%ebp),%esi
420a28:	89 5e 10             	mov    %ebx,0x10(%esi)
420a2b:	c7 46 14 0f 00 00 00 	movl   $0xf,0x14(%esi)
420a32:	88 1e                	mov    %bl,(%esi)
420a34:	89 5d fc             	mov    %ebx,-0x4(%ebp)
420a37:	8b 45 10             	mov    0x10(%ebp),%eax
420a3a:	c7 45 f0 01 00 00 00 	movl   $0x1,-0x10(%ebp)
420a41:	2b 45 0c             	sub    0xc(%ebp),%eax
420a44:	74 3f                	je     0x420a85
420a46:	8d 79 08             	lea    0x8(%ecx),%edi
420a49:	53                   	push   %ebx
420a4a:	50                   	push   %eax
420a4b:	8b ce                	mov    %esi,%ecx
420a4d:	e8 31 1e 00 00       	call   0x422883
420a52:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
420a56:	8b c6                	mov    %esi,%eax
420a58:	8b 4e 10             	mov    0x10(%esi),%ecx
420a5b:	72 02                	jb     0x420a5f
420a5d:	8b 06                	mov    (%esi),%eax
420a5f:	03 c8                	add    %eax,%ecx
420a61:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
420a65:	8b c6                	mov    %esi,%eax
420a67:	72 02                	jb     0x420a6b
420a69:	8b 06                	mov    (%esi),%eax
420a6b:	57                   	push   %edi
420a6c:	ff 75 10             	push   0x10(%ebp)
420a6f:	ff 75 0c             	push   0xc(%ebp)
420a72:	51                   	push   %ecx
420a73:	50                   	push   %eax
420a74:	e8 b1 57 00 00       	call   0x42622a
420a79:	83 c4 14             	add    $0x14,%esp
420a7c:	3b 46 10             	cmp    0x10(%esi),%eax
420a7f:	76 04                	jbe    0x420a85
420a81:	85 c0                	test   %eax,%eax
420a83:	75 c4                	jne    0x420a49
420a85:	53                   	push   %ebx
420a86:	50                   	push   %eax
420a87:	8b ce                	mov    %esi,%ecx
420a89:	e8 f5 1d 00 00       	call   0x422883
420a8e:	8b c6                	mov    %esi,%eax
420a90:	e8 7e ef 01 00       	call   0x43fa13
420a95:	c2 0c 00             	ret    $0xc
420a98:	6a 04                	push   $0x4
420a9a:	b8 f9 fb 48 00       	mov    $0x48fbf9,%eax
420a9f:	e8 a6 ef 01 00       	call   0x43fa4a
420aa4:	33 db                	xor    %ebx,%ebx
420aa6:	89 5d fc             	mov    %ebx,-0x4(%ebp)
420aa9:	33 c0                	xor    %eax,%eax
420aab:	89 5d f0             	mov    %ebx,-0x10(%ebp)
420aae:	8b 75 08             	mov    0x8(%ebp),%esi
420ab1:	89 5e 10             	mov    %ebx,0x10(%esi)
420ab4:	c7 46 14 07 00 00 00 	movl   $0x7,0x14(%esi)
420abb:	66 89 06             	mov    %ax,(%esi)
420abe:	89 5d fc             	mov    %ebx,-0x4(%ebp)
420ac1:	8b 45 10             	mov    0x10(%ebp),%eax
420ac4:	2b 45 0c             	sub    0xc(%ebp),%eax
420ac7:	d1 f8                	sar    $1,%eax
420ac9:	c7 45 f0 01 00 00 00 	movl   $0x1,-0x10(%ebp)
420ad0:	74 3c                	je     0x420b0e
420ad2:	8d 79 08             	lea    0x8(%ecx),%edi
420ad5:	53                   	push   %ebx
420ad6:	50                   	push   %eax
420ad7:	8b ce                	mov    %esi,%ecx
420ad9:	e8 d1 1d 00 00       	call   0x4228af
420ade:	83 7e 14 08          	cmpl   $0x8,0x14(%esi)
420ae2:	8b c6                	mov    %esi,%eax
420ae4:	8b 4e 10             	mov    0x10(%esi),%ecx
420ae7:	72 02                	jb     0x420aeb
420ae9:	8b 06                	mov    (%esi),%eax
420aeb:	8d 0c 48             	lea    (%eax,%ecx,2),%ecx
420aee:	8b c6                	mov    %esi,%eax
420af0:	72 02                	jb     0x420af4
420af2:	8b 06                	mov    (%esi),%eax
420af4:	57                   	push   %edi
420af5:	ff 75 10             	push   0x10(%ebp)
420af8:	ff 75 0c             	push   0xc(%ebp)
420afb:	51                   	push   %ecx
420afc:	50                   	push   %eax
420afd:	e8 8e 59 00 00       	call   0x426490
420b02:	83 c4 14             	add    $0x14,%esp
420b05:	3b 46 10             	cmp    0x10(%esi),%eax
420b08:	76 04                	jbe    0x420b0e
420b0a:	85 c0                	test   %eax,%eax
420b0c:	75 c7                	jne    0x420ad5
420b0e:	53                   	push   %ebx
420b0f:	50                   	push   %eax
420b10:	8b ce                	mov    %esi,%ecx
420b12:	e8 98 1d 00 00       	call   0x4228af
420b17:	8b c6                	mov    %esi,%eax
420b19:	e8 f5 ee 01 00       	call   0x43fa13
420b1e:	c2 0c 00             	ret    $0xc
420b21:	6a 04                	push   $0x4
420b23:	b8 2d fc 48 00       	mov    $0x48fc2d,%eax
420b28:	e8 1d ef 01 00       	call   0x43fa4a
420b2d:	83 65 f0 00          	andl   $0x0,-0x10(%ebp)
420b31:	ff 71 14             	push   0x14(%ecx)
420b34:	8b 4d 08             	mov    0x8(%ebp),%ecx
420b37:	e8 22 a8 fe ff       	call   0x40b35e
420b3c:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
420b40:	c7 45 f0 01 00 00 00 	movl   $0x1,-0x10(%ebp)
420b47:	8b 45 08             	mov    0x8(%ebp),%eax
420b4a:	e8 c4 ee 01 00       	call   0x43fa13
420b4f:	c2 04 00             	ret    $0x4
420b52:	55                   	push   %ebp
420b53:	8b ec                	mov    %esp,%ebp
420b55:	8a 45 08             	mov    0x8(%ebp),%al
420b58:	5d                   	pop    %ebp
420b59:	c2 04 00             	ret    $0x4
420b5c:	55                   	push   %ebp
420b5d:	8b ec                	mov    %esp,%ebp
420b5f:	8b 4d 0c             	mov    0xc(%ebp),%ecx
420b62:	2b 4d 08             	sub    0x8(%ebp),%ecx
420b65:	51                   	push   %ecx
420b66:	ff 75 08             	push   0x8(%ebp)
420b69:	ff 75 10             	push   0x10(%ebp)
420b6c:	e8 ef 27 02 00       	call   0x443360
420b71:	8b 45 0c             	mov    0xc(%ebp),%eax
420b74:	83 c4 0c             	add    $0xc,%esp
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