405998:	cc                   	int3
405999:	55                   	push   %ebp
40599a:	8b ec                	mov    %esp,%ebp
40599c:	53                   	push   %ebx
40599d:	e8 3b ec 00 00       	call   0x4145dd
4059a2:	8b 5d 08             	mov    0x8(%ebp),%ebx
4059a5:	6a 02                	push   $0x2
4059a7:	68 00 01 00 00       	push   $0x100
4059ac:	89 03                	mov    %eax,(%ebx)
4059ae:	e8 7c ea 00 00       	call   0x41442f
4059b3:	89 43 04             	mov    %eax,0x4(%ebx)
4059b6:	59                   	pop    %ecx
4059b7:	59                   	pop    %ecx
4059b8:	85 c0                	test   %eax,%eax
4059ba:	74 1e                	je     0x4059da
4059bc:	56                   	push   %esi
4059bd:	57                   	push   %edi
4059be:	e8 c9 ea 00 00       	call   0x41448c
4059c3:	8b 7b 04             	mov    0x4(%ebx),%edi
4059c6:	b9 80 00 00 00       	mov    $0x80,%ecx
4059cb:	8b f0                	mov    %eax,%esi
4059cd:	c7 43 08 01 00 00 00 	movl   $0x1,0x8(%ebx)
4059d4:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
4059d6:	5f                   	pop    %edi
4059d7:	5e                   	pop    %esi
4059d8:	eb 0c                	jmp    0x4059e6
4059da:	e8 ad ea 00 00       	call   0x41448c
4059df:	83 63 08 00          	andl   $0x0,0x8(%ebx)
4059e3:	89 43 04             	mov    %eax,0x4(%ebx)
4059e6:	e8 19 ec 00 00       	call   0x414604
4059eb:	8b 40 04             	mov    0x4(%eax),%eax
4059ee:	89 43 0c             	mov    %eax,0xc(%ebx)
4059f1:	85 c0                	test   %eax,%eax
4059f3:	74 0a                	je     0x4059ff
4059f5:	50                   	push   %eax
4059f6:	e8 81 eb 00 00       	call   0x41457c
4059fb:	59                   	pop    %ecx
4059fc:	89 43 0c             	mov    %eax,0xc(%ebx)
4059ff:	8b c3                	mov    %ebx,%eax
405a01:	5b                   	pop    %ebx
405a02:	5d                   	pop    %ebp
405a03:	c3                   	ret
405a04:	55                   	push   %ebp
405a05:	8b ec                	mov    %esp,%ebp
405a07:	53                   	push   %ebx
405a08:	56                   	push   %esi
405a09:	8b 75 08             	mov    0x8(%ebp),%esi
405a0c:	33 db                	xor    %ebx,%ebx
405a0e:	57                   	push   %edi
405a0f:	6a 0a                	push   $0xa
405a11:	59                   	pop    %ecx
405a12:	33 c0                	xor    %eax,%eax
405a14:	89 1e                	mov    %ebx,(%esi)
405a16:	8d 7e 04             	lea    0x4(%esi),%edi
405a19:	f3 ab                	rep stos %eax,%es:(%edi)
405a1b:	e8 bd eb 00 00       	call   0x4145dd
405a20:	8b fe                	mov    %esi,%edi
405a22:	89 07                	mov    %eax,(%edi)
405a24:	e8 04 ec 00 00       	call   0x41462d
405a29:	89 46 04             	mov    %eax,0x4(%esi)
405a2c:	e8 d3 eb 00 00       	call   0x414604
405a31:	33 c9                	xor    %ecx,%ecx
405a33:	39 58 08             	cmp    %ebx,0x8(%eax)
405a36:	0f 94 c1             	sete   %cl
405a39:	89 4f 08             	mov    %ecx,0x8(%edi)
405a3c:	85 c9                	test   %ecx,%ecx
405a3e:	75 2a                	jne    0x405a6a
405a40:	53                   	push   %ebx
405a41:	e8 91 f0 00 00       	call   0x414ad7
405a46:	59                   	pop    %ecx
405a47:	85 c0                	test   %eax,%eax
405a49:	74 16                	je     0x405a61
405a4b:	8b d3                	mov    %ebx,%edx
405a4d:	8b c3                	mov    %ebx,%eax
405a4f:	c1 fa 03             	sar    $0x3,%edx
405a52:	83 e0 07             	and    $0x7,%eax
405a55:	0f b6 4c 3a 0c       	movzbl 0xc(%edx,%edi,1),%ecx
405a5a:	0f ab c1             	bts    %eax,%ecx
405a5d:	88 4c 3a 0c          	mov    %cl,0xc(%edx,%edi,1)
405a61:	43                   	inc    %ebx
405a62:	81 fb 00 01 00 00    	cmp    $0x100,%ebx
405a68:	7c d6                	jl     0x405a40
405a6a:	8b c7                	mov    %edi,%eax
405a6c:	5f                   	pop    %edi
405a6d:	5e                   	pop    %esi
405a6e:	5b                   	pop    %ebx
405a6f:	5d                   	pop    %ebp
405a70:	c3                   	ret
405a71:	55                   	push   %ebp
405a72:	8b ec                	mov    %esp,%ebp
405a74:	51                   	push   %ecx
405a75:	8b 45 14             	mov    0x14(%ebp),%eax
405a78:	8b 4d 08             	mov    0x8(%ebp),%ecx
405a7b:	56                   	push   %esi
405a7c:	33 f6                	xor    %esi,%esi
405a7e:	39 70 08             	cmp    %esi,0x8(%eax)
405a81:	74 15                	je     0x405a98
405a83:	66 8b 45 0c          	mov    0xc(%ebp),%ax
405a87:	ba ff 00 00 00       	mov    $0xff,%edx
405a8c:	66 3b c2             	cmp    %dx,%ax
405a8f:	77 2b                	ja     0x405abc
405a91:	88 01                	mov    %al,(%ecx)
405a93:	33 c0                	xor    %eax,%eax
405a95:	40                   	inc    %eax
405a96:	eb 32                	jmp    0x405aca
405a98:	8d 55 fc             	lea    -0x4(%ebp),%edx
405a9b:	89 75 fc             	mov    %esi,-0x4(%ebp)
405a9e:	52                   	push   %edx
405a9f:	56                   	push   %esi
405aa0:	ff 70 04             	push   0x4(%eax)
405aa3:	51                   	push   %ecx
405aa4:	6a 01                	push   $0x1
405aa6:	8d 4d 0c             	lea    0xc(%ebp),%ecx
405aa9:	51                   	push   %ecx
405aaa:	56                   	push   %esi
405aab:	ff 30                	push   (%eax)
405aad:	ff 15 2c 71 42 00    	call   *0x42712c
405ab3:	85 c0                	test   %eax,%eax
405ab5:	74 05                	je     0x405abc
405ab7:	39 75 fc             	cmp    %esi,-0x4(%ebp)
405aba:	74 0e                	je     0x405aca
405abc:	e8 aa ef 00 00       	call   0x414a6b
405ac1:	c7 00 2a 00 00 00    	movl   $0x2a,(%eax)
405ac7:	83 c8 ff             	or     $0xffffffff,%eax
405aca:	5e                   	pop    %esi
405acb:	8b e5                	mov    %ebp,%esp
405acd:	5d                   	pop    %ebp
405ace:	c3                   	ret
405acf:	55                   	push   %ebp
405ad0:	8b ec                	mov    %esp,%ebp
405ad2:	83 ec 68             	sub    $0x68,%esp
405ad5:	a1 28 ba 43 00       	mov    0x43ba28,%eax
405ada:	33 c5                	xor    %ebp,%eax
405adc:	89 45 fc             	mov    %eax,-0x4(%ebp)
405adf:	8b 4d 14             	mov    0x14(%ebp),%ecx
405ae2:	53                   	push   %ebx
405ae3:	8b 5d 08             	mov    0x8(%ebp),%ebx
405ae6:	56                   	push   %esi
405ae7:	8b 75 18             	mov    0x18(%ebp),%esi
405aea:	57                   	push   %edi
405aeb:	8b 7d 0c             	mov    0xc(%ebp),%edi
405aee:	89 7d c4             	mov    %edi,-0x3c(%ebp)
405af1:	89 4d c8             	mov    %ecx,-0x38(%ebp)
405af4:	85 ff                	test   %edi,%edi
405af6:	74 14                	je     0x405b0c
405af8:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
405afc:	74 0e                	je     0x405b0c
405afe:	80 3f 00             	cmpb   $0x0,(%edi)
405b01:	75 1c                	jne    0x405b1f
405b03:	85 db                	test   %ebx,%ebx
405b05:	74 05                	je     0x405b0c
405b07:	33 c0                	xor    %eax,%eax
405b09:	66 89 03             	mov    %ax,(%ebx)
405b0c:	33 c0                	xor    %eax,%eax
405b0e:	8b 4d fc             	mov    -0x4(%ebp),%ecx
405b11:	5f                   	pop    %edi
405b12:	5e                   	pop    %esi
405b13:	33 cd                	xor    %ebp,%ecx
405b15:	5b                   	pop    %ebx
405b16:	e8 45 15 00 00       	call   0x407060
405b1b:	8b e5                	mov    %ebp,%esp
405b1d:	5d                   	pop    %ebp
405b1e:	c3                   	ret
405b1f:	85 f6                	test   %esi,%esi
405b21:	75 1d                	jne    0x405b40
405b23:	8d 45 98             	lea    -0x68(%ebp),%eax
405b26:	50                   	push   %eax
405b27:	e8 d8 fe ff ff       	call   0x405a04
405b2c:	59                   	pop    %ecx
405b2d:	6a 0b                	push   $0xb
405b2f:	59                   	pop    %ecx
405b30:	8b f0                	mov    %eax,%esi
405b32:	8d 7d d0             	lea    -0x30(%ebp),%edi
405b35:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
405b37:	8b 7d c4             	mov    -0x3c(%ebp),%edi
405b3a:	8d 75 d0             	lea    -0x30(%ebp),%esi
405b3d:	8b 4d c8             	mov    -0x38(%ebp),%ecx
405b40:	83 7e 08 00          	cmpl   $0x0,0x8(%esi)
405b44:	74 0f                	je     0x405b55
405b46:	85 db                	test   %ebx,%ebx
405b48:	74 06                	je     0x405b50
405b4a:	0f b6 07             	movzbl (%edi),%eax
405b4d:	66 89 03             	mov    %ax,(%ebx)
405b50:	33 c0                	xor    %eax,%eax
405b52:	40                   	inc    %eax
405b53:	eb b9                	jmp    0x405b0e
405b55:	83 39 00             	cmpl   $0x0,(%ecx)
405b58:	74 49                	je     0x405ba3
405b5a:	8a 07                	mov    (%edi),%al
405b5c:	88 41 01             	mov    %al,0x1(%ecx)
405b5f:	83 7e 04 01          	cmpl   $0x1,0x4(%esi)
405b63:	76 28                	jbe    0x405b8d
405b65:	33 c0                	xor    %eax,%eax
405b67:	85 db                	test   %ebx,%ebx
405b69:	0f 95 c0             	setne  %al
405b6c:	50                   	push   %eax
405b6d:	53                   	push   %ebx
405b6e:	6a 02                	push   $0x2
405b70:	51                   	push   %ecx
405b71:	6a 09                	push   $0x9
405b73:	ff 36                	push   (%esi)
405b75:	ff 15 30 71 42 00    	call   *0x427130
405b7b:	85 c0                	test   %eax,%eax
405b7d:	74 0b                	je     0x405b8a
405b7f:	8b 45 c8             	mov    -0x38(%ebp),%eax
405b82:	83 20 00             	andl   $0x0,(%eax)
405b85:	8b 46 04             	mov    0x4(%esi),%eax
405b88:	eb 84                	jmp    0x405b0e
405b8a:	8b 4d c8             	mov    -0x38(%ebp),%ecx
405b8d:	83 21 00             	andl   $0x0,(%ecx)
405b90:	e8 d6 ee 00 00       	call   0x414a6b
405b95:	c7 00 2a 00 00 00    	movl   $0x2a,(%eax)
405b9b:	83 c8 ff             	or     $0xffffffff,%eax
405b9e:	e9 6b ff ff ff       	jmp    0x405b0e
405ba3:	0f b6 17             	movzbl (%edi),%edx
405ba6:	33 c0                	xor    %eax,%eax
405ba8:	8b ca                	mov    %edx,%ecx
405baa:	40                   	inc    %eax
405bab:	83 e1 07             	and    $0x7,%ecx
405bae:	c1 ea 03             	shr    $0x3,%edx
405bb1:	d3 e0                	shl    %cl,%eax
405bb3:	84 44 32 0c          	test   %al,0xc(%edx,%esi,1)
405bb7:	74 46                	je     0x405bff
405bb9:	8b 45 10             	mov    0x10(%ebp),%eax
405bbc:	3b 46 04             	cmp    0x4(%esi),%eax
405bbf:	73 0f                	jae    0x405bd0
405bc1:	8b 45 c8             	mov    -0x38(%ebp),%eax
405bc4:	8a 0f                	mov    (%edi),%cl
405bc6:	6a fe                	push   $0xfffffffe
405bc8:	88 08                	mov    %cl,(%eax)
405bca:	58                   	pop    %eax
405bcb:	e9 3e ff ff ff       	jmp    0x405b0e
405bd0:	83 7e 04 01          	cmpl   $0x1,0x4(%esi)
405bd4:	76 1b                	jbe    0x405bf1
405bd6:	33 c0                	xor    %eax,%eax
405bd8:	85 db                	test   %ebx,%ebx
405bda:	0f 95 c0             	setne  %al
405bdd:	50                   	push   %eax
405bde:	53                   	push   %ebx
405bdf:	ff 76 04             	push   0x4(%esi)
405be2:	57                   	push   %edi
405be3:	6a 09                	push   $0x9
405be5:	ff 36                	push   (%esi)
405be7:	ff 15 30 71 42 00    	call   *0x427130
405bed:	85 c0                	test   %eax,%eax
405bef:	75 94                	jne    0x405b85
405bf1:	80 7f 01 00          	cmpb   $0x0,0x1(%edi)
405bf5:	75 8e                	jne    0x405b85
405bf7:	8b 45 c8             	mov    -0x38(%ebp),%eax
405bfa:	83 20 00             	andl   $0x0,(%eax)
405bfd:	eb 91                	jmp    0x405b90
405bff:	33 c0                	xor    %eax,%eax
405c01:	85 db                	test   %ebx,%ebx
405c03:	0f 95 c0             	setne  %al
405c06:	50                   	push   %eax
405c07:	53                   	push   %ebx
405c08:	6a 01                	push   $0x1
405c0a:	57                   	push   %edi
405c0b:	6a 09                	push   $0x9
405c0d:	ff 36                	push   (%esi)
405c0f:	ff 15 30 71 42 00    	call   *0x427130
405c15:	85 c0                	test   %eax,%eax
405c17:	0f 85 33 ff ff ff    	jne    0x405b50
405c1d:	e9 6e ff ff ff       	jmp    0x405b90
405c22:	55                   	push   %ebp
405c23:	8b ec                	mov    %esp,%ebp
405c25:	51                   	push   %ecx
405c26:	8d 45 fc             	lea    -0x4(%ebp),%eax
405c29:	50                   	push   %eax
405c2a:	6a 01                	push   $0x1
405c2c:	8d 45 08             	lea    0x8(%ebp),%eax
405c2f:	50                   	push   %eax
405c30:	6a 01                	push   $0x1
405c32:	ff 15 34 71 42 00    	call   *0x427134
405c38:	0f bf 4d fc          	movswl -0x4(%ebp),%ecx
405c3c:	f7 d8                	neg    %eax
405c3e:	1b c0                	sbb    %eax,%eax
405c40:	23 c1                	and    %ecx,%eax
405c42:	8b e5                	mov    %ebp,%esp
405c44:	5d                   	pop    %ebp
405c45:	c3                   	ret
405c46:	55                   	push   %ebp
405c47:	8b ec                	mov    %esp,%ebp
405c49:	ff 75 10             	push   0x10(%ebp)
405c4c:	8b 4d 0c             	mov    0xc(%ebp),%ecx
405c4f:	2b 4d 08             	sub    0x8(%ebp),%ecx
405c52:	d1 f9                	sar    $1,%ecx
405c54:	51                   	push   %ecx
405c55:	ff 75 08             	push   0x8(%ebp)
405c58:	6a 01                	push   $0x1
405c5a:	ff 15 34 71 42 00    	call   *0x427134
405c60:	8b 45 0c             	mov    0xc(%ebp),%eax
405c63:	5d                   	pop    %ebp
405c64:	c3                   	ret
405c65:	55                   	push   %ebp
405c66:	8b ec                	mov    %esp,%ebp
405c68:	51                   	push   %ecx
405c69:	66 8b 4d 08          	mov    0x8(%ebp),%cx
405c6d:	b8 ff ff 00 00       	mov    $0xffff,%eax
405c72:	66 89 4d fc          	mov    %cx,-0x4(%ebp)
405c76:	66 3b c8             	cmp    %ax,%cx
405c79:	74 45                	je     0x405cc0
405c7b:	8b 45 0c             	mov    0xc(%ebp),%eax
405c7e:	ba 00 01 00 00       	mov    $0x100,%edx
405c83:	8b 40 0c             	mov    0xc(%eax),%eax
405c86:	85 c0                	test   %eax,%eax
405c88:	75 14                	jne    0x405c9e
405c8a:	66 3b ca             	cmp    %dx,%cx
405c8d:	73 0f                	jae    0x405c9e
405c8f:	8d 41 bf             	lea    -0x41(%ecx),%eax
405c92:	66 83 f8 19          	cmp    $0x19,%ax
405c96:	77 28                	ja     0x405cc0
405c98:	66 83 c1 20          	add    $0x20,%cx
405c9c:	eb 22                	jmp    0x405cc0
405c9e:	6a 01                	push   $0x1
405ca0:	8d 4d fc             	lea    -0x4(%ebp),%ecx
405ca3:	51                   	push   %ecx
405ca4:	6a 01                	push   $0x1
405ca6:	8d 4d 08             	lea    0x8(%ebp),%ecx
405ca9:	51                   	push   %ecx
405caa:	52                   	push   %edx
405cab:	50                   	push   %eax
405cac:	e8 fb 05 00 00       	call   0x4062ac
405cb1:	66 8b 4d 08          	mov    0x8(%ebp),%cx
405cb5:	83 c4 18             	add    $0x18,%esp
405cb8:	85 c0                	test   %eax,%eax
405cba:	74 04                	je     0x405cc0
405cbc:	66 8b 4d fc          	mov    -0x4(%ebp),%cx
405cc0:	66 8b c1             	mov    %cx,%ax
405cc3:	8b e5                	mov    %ebp,%esp
405cc5:	5d                   	pop    %ebp
405cc6:	c3                   	ret
405cc7:	55                   	push   %ebp
405cc8:	8b ec                	mov    %esp,%ebp
405cca:	51                   	push   %ecx
405ccb:	66 8b 4d 08          	mov    0x8(%ebp),%cx
405ccf:	b8 ff ff 00 00       	mov    $0xffff,%eax
405cd4:	66 89 4d fc          	mov    %cx,-0x4(%ebp)
405cd8:	66 3b c8             	cmp    %ax,%cx
405cdb:	74 49                	je     0x405d26
405cdd:	8b 45 0c             	mov    0xc(%ebp),%eax
405ce0:	8b 40 0c             	mov    0xc(%eax),%eax
405ce3:	85 c0                	test   %eax,%eax
405ce5:	75 19                	jne    0x405d00
405ce7:	ba 00 01 00 00       	mov    $0x100,%edx
405cec:	66 3b ca             	cmp    %dx,%cx
405cef:	73 0f                	jae    0x405d00
405cf1:	8d 41 9f             	lea    -0x61(%ecx),%eax
405cf4:	66 83 f8 19          	cmp    $0x19,%ax
405cf8:	77 2c                	ja     0x405d26