42594d:	56                   	push   %esi
42594e:	57                   	push   %edi
42594f:	8b f0                	mov    %eax,%esi
425951:	8b fe                	mov    %esi,%edi
425953:	ba ff 00 00 00       	mov    $0xff,%edx
425958:	8d 04 97             	lea    (%edi,%edx,4),%eax
42595b:	8d 0c 52             	lea    (%edx,%edx,2),%ecx
42595e:	8d 0c 0e             	lea    (%esi,%ecx,1),%ecx
425961:	0f b6 59 02          	movzbl 0x2(%ecx),%ebx
425965:	88 58 02             	mov    %bl,0x2(%eax)
425968:	0f b6 59 01          	movzbl 0x1(%ecx),%ebx
42596c:	88 58 01             	mov    %bl,0x1(%eax)
42596f:	0f b6 09             	movzbl (%ecx),%ecx
425972:	88 08                	mov    %cl,(%eax)
425974:	c6 40 03 00          	movb   $0x0,0x3(%eax)
425978:	4a                   	dec    %edx
425979:	85 d2                	test   %edx,%edx
42597b:	75 db                	jne    0x425958
42597d:	c6 47 03 00          	movb   $0x0,0x3(%edi)
425981:	5f                   	pop    %edi
425982:	5e                   	pop    %esi
425983:	5b                   	pop    %ebx
425984:	c3                   	ret
425985:	8d 40 00             	lea    0x0(%eax),%eax
425988:	53                   	push   %ebx
425989:	56                   	push   %esi
42598a:	57                   	push   %edi
42598b:	83 c4 f8             	add    $0xfffffff8,%esp
42598e:	89 14 24             	mov    %edx,(%esp)
425991:	8b f0                	mov    %eax,%esi
425993:	89 74 24 04          	mov    %esi,0x4(%esp)
425997:	8b 3c 24             	mov    (%esp),%edi
42599a:	8b 3f                	mov    (%edi),%edi
42599c:	4f                   	dec    %edi
42599d:	85 ff                	test   %edi,%edi
42599f:	7e 29                	jle    0x4259ca
4259a1:	b9 01 00 00 00       	mov    $0x1,%ecx
4259a6:	8b 44 24 04          	mov    0x4(%esp),%eax
4259aa:	8d 04 88             	lea    (%eax,%ecx,4),%eax
4259ad:	8d 14 49             	lea    (%ecx,%ecx,2),%edx
4259b0:	8d 14 16             	lea    (%esi,%edx,1),%edx
4259b3:	0f b6 58 02          	movzbl 0x2(%eax),%ebx
4259b7:	88 5a 02             	mov    %bl,0x2(%edx)
4259ba:	0f b6 58 01          	movzbl 0x1(%eax),%ebx
4259be:	88 5a 01             	mov    %bl,0x1(%edx)
4259c1:	0f b6 00             	movzbl (%eax),%eax
4259c4:	88 02                	mov    %al,(%edx)
4259c6:	41                   	inc    %ecx
4259c7:	4f                   	dec    %edi
4259c8:	75 dc                	jne    0x4259a6
4259ca:	8b 04 24             	mov    (%esp),%eax
4259cd:	81 38 00 01 00 00    	cmpl   $0x100,(%eax)
4259d3:	7d 28                	jge    0x4259fd
4259d5:	8b 04 24             	mov    (%esp),%eax
4259d8:	ba 00 01 00 00       	mov    $0x100,%edx
4259dd:	2b 10                	sub    (%eax),%edx
4259df:	8d 14 52             	lea    (%edx,%edx,2),%edx
4259e2:	8b 04 24             	mov    (%esp),%eax
4259e5:	8b 00                	mov    (%eax),%eax
4259e7:	8d 04 40             	lea    (%eax,%eax,2),%eax
4259ea:	8d 04 06             	lea    (%esi,%eax,1),%eax
4259ed:	33 c9                	xor    %ecx,%ecx
4259ef:	e8 64 d8 fd ff       	call   0x403258
4259f4:	8b 04 24             	mov    (%esp),%eax
4259f7:	c7 00 00 01 00 00    	movl   $0x100,(%eax)
4259fd:	59                   	pop    %ecx
4259fe:	5a                   	pop    %edx
4259ff:	5f                   	pop    %edi
425a00:	5e                   	pop    %esi
425a01:	5b                   	pop    %ebx
425a02:	c3                   	ret
425a03:	90                   	nop
425a04:	55                   	push   %ebp
425a05:	8b ec                	mov    %esp,%ebp
425a07:	83 c4 f4             	add    $0xfffffff4,%esp
425a0a:	89 55 f8             	mov    %edx,-0x8(%ebp)
425a0d:	89 45 fc             	mov    %eax,-0x4(%ebp)
425a10:	a1 5c 77 4a 00       	mov    0x4a775c,%eax
425a15:	0f b6 00             	movzbl (%eax),%eax
425a18:	89 45 f4             	mov    %eax,-0xc(%ebp)
425a1b:	8b 55 fc             	mov    -0x4(%ebp),%edx
425a1e:	8b 4d f8             	mov    -0x8(%ebp),%ecx
425a21:	49                   	dec    %ecx
425a22:	78 2f                	js     0x425a53
425a24:	83 7d f4 02          	cmpl   $0x2,-0xc(%ebp)
425a28:	7e 10                	jle    0x425a3a
425a2a:	8b 04 8a             	mov    (%edx,%ecx,4),%eax
425a2d:	0f c8                	bswap  %eax
425a2f:	c1 e8 08             	shr    $0x8,%eax
425a32:	89 04 8a             	mov    %eax,(%edx,%ecx,4)
425a35:	49                   	dec    %ecx
425a36:	79 f2                	jns    0x425a2a
425a38:	eb 19                	jmp    0x425a53
425a3a:	53                   	push   %ebx
425a3b:	31 db                	xor    %ebx,%ebx
425a3d:	8b 04 8a             	mov    (%edx,%ecx,4),%eax
425a40:	88 c7                	mov    %al,%bh
425a42:	88 e3                	mov    %ah,%bl
425a44:	c1 e8 10             	shr    $0x10,%eax
425a47:	c1 e3 08             	shl    $0x8,%ebx
425a4a:	88 c3                	mov    %al,%bl
425a4c:	89 1c 8a             	mov    %ebx,(%edx,%ecx,4)
425a4f:	49                   	dec    %ecx
425a50:	79 e9                	jns    0x425a3b
425a52:	5b                   	pop    %ebx
425a53:	8b e5                	mov    %ebp,%esp
425a55:	5d                   	pop    %ebp
425a56:	c3                   	ret
425a57:	90                   	nop
425a58:	55                   	push   %ebp
425a59:	8b ec                	mov    %esp,%ebp
425a5b:	81 c4 f8 fb ff ff    	add    $0xfffffbf8,%esp
425a61:	53                   	push   %ebx
425a62:	66 c7 85 f8 fb ff ff 	movw   $0x300,-0x408(%ebp)
425a69:	00 03
425a6b:	66 c7 85 fa fb ff ff 	movw   $0x10,-0x406(%ebp)
425a72:	10 00
425a74:	8d 95 fc fb ff ff    	lea    -0x404(%ebp),%edx
425a7a:	b9 40 00 00 00       	mov    $0x40,%ecx
425a7f:	e8 68 d4 fd ff       	call   0x402eec
425a84:	6a 00                	push   $0x0
425a86:	e8 f5 14 fe ff       	call   0x406f80
425a8b:	89 45 fc             	mov    %eax,-0x4(%ebp)
425a8e:	33 c0                	xor    %eax,%eax
425a90:	55                   	push   %ebp
425a91:	68 55 5b 42 00       	push   $0x425b55
425a96:	64 ff 30             	push   %fs:(%eax)
425a99:	64 89 20             	mov    %esp,%fs:(%eax)
425a9c:	6a 68                	push   $0x68
425a9e:	8b 45 fc             	mov    -0x4(%ebp),%eax
425aa1:	50                   	push   %eax
425aa2:	e8 b9 11 fe ff       	call   0x406c60
425aa7:	8b d8                	mov    %eax,%ebx
425aa9:	83 fb 10             	cmp    $0x10,%ebx
425aac:	0f 8c 8a 00 00 00    	jl     0x425b3c
425ab2:	8d 85 fc fb ff ff    	lea    -0x404(%ebp),%eax
425ab8:	50                   	push   %eax
425ab9:	6a 08                	push   $0x8
425abb:	6a 00                	push   $0x0
425abd:	8b 45 fc             	mov    -0x4(%ebp),%eax
425ac0:	50                   	push   %eax
425ac1:	e8 ea 11 fe ff       	call   0x406cb0
425ac6:	81 bd 18 fc ff ff c0 	cmpl   $0xc0c0c0,-0x3e8(%ebp)
425acd:	c0 c0 00
425ad0:	75 4c                	jne    0x425b1e
425ad2:	8d 85 18 fc ff ff    	lea    -0x3e8(%ebp),%eax
425ad8:	50                   	push   %eax
425ad9:	6a 01                	push   $0x1
425adb:	8b c3                	mov    %ebx,%eax
425add:	83 e8 08             	sub    $0x8,%eax
425ae0:	50                   	push   %eax
425ae1:	8b 45 fc             	mov    -0x4(%ebp),%eax
425ae4:	50                   	push   %eax
425ae5:	e8 c6 11 fe ff       	call   0x406cb0
425aea:	0f b7 85 fa fb ff ff 	movzwl -0x406(%ebp),%eax
425af1:	8d 84 85 e0 fb ff ff 	lea    -0x420(%ebp,%eax,4),%eax
425af8:	50                   	push   %eax
425af9:	6a 07                	push   $0x7
425afb:	83 eb 07             	sub    $0x7,%ebx
425afe:	53                   	push   %ebx
425aff:	8b 45 fc             	mov    -0x4(%ebp),%eax
425b02:	50                   	push   %eax
425b03:	e8 a8 11 fe ff       	call   0x406cb0
425b08:	8d 85 1c fc ff ff    	lea    -0x3e4(%ebp),%eax
425b0e:	50                   	push   %eax
425b0f:	6a 01                	push   $0x1
425b11:	6a 07                	push   $0x7
425b13:	8b 45 fc             	mov    -0x4(%ebp),%eax
425b16:	50                   	push   %eax
425b17:	e8 94 11 fe ff       	call   0x406cb0
425b1c:	eb 1e                	jmp    0x425b3c
425b1e:	0f b7 85 fa fb ff ff 	movzwl -0x406(%ebp),%eax
425b25:	8d 84 85 dc fb ff ff 	lea    -0x424(%ebp,%eax,4),%eax
425b2c:	50                   	push   %eax
425b2d:	6a 08                	push   $0x8
425b2f:	83 eb 08             	sub    $0x8,%ebx
425b32:	53                   	push   %ebx
425b33:	8b 45 fc             	mov    -0x4(%ebp),%eax
425b36:	50                   	push   %eax
425b37:	e8 74 11 fe ff       	call   0x406cb0
425b3c:	33 c0                	xor    %eax,%eax
425b3e:	5a                   	pop    %edx
425b3f:	59                   	pop    %ecx
425b40:	59                   	pop    %ecx
425b41:	64 89 10             	mov    %edx,%fs:(%eax)
425b44:	68 5c 5b 42 00       	push   $0x425b5c
425b49:	8b 45 fc             	mov    -0x4(%ebp),%eax
425b4c:	50                   	push   %eax
425b4d:	6a 00                	push   $0x0
425b4f:	e8 b4 16 fe ff       	call   0x407208
425b54:	c3                   	ret
425b55:	e9 56 e5 fd ff       	jmp    0x4040b0
425b5a:	eb ed                	jmp    0x425b49
425b5c:	8d 85 f8 fb ff ff    	lea    -0x408(%ebp),%eax
425b62:	50                   	push   %eax
425b63:	e8 80 10 fe ff       	call   0x406be8
425b68:	5b                   	pop    %ebx
425b69:	8b e5                	mov    %ebp,%esp
425b6b:	5d                   	pop    %ebp
425b6c:	c3                   	ret
425b6d:	8d 40 00             	lea    0x0(%eax),%eax
425b70:	55                   	push   %ebp
425b71:	8b ec                	mov    %esp,%ebp
425b73:	83 c4 f8             	add    $0xfffffff8,%esp
425b76:	53                   	push   %ebx
425b77:	8b d8                	mov    %eax,%ebx
425b79:	c6 45 ff 00          	movb   $0x0,-0x1(%ebp)
425b7d:	83 3d 4c b3 4a 00 00 	cmpl   $0x0,0x4ab34c
425b84:	74 77                	je     0x425bfd
425b86:	6a 00                	push   $0x0
425b88:	e8 f3 13 fe ff       	call   0x406f80
425b8d:	89 45 f8             	mov    %eax,-0x8(%ebp)
425b90:	33 d2                	xor    %edx,%edx
425b92:	55                   	push   %ebp
425b93:	68 f6 5b 42 00       	push   $0x425bf6
425b98:	64 ff 32             	push   %fs:(%edx)
425b9b:	64 89 22             	mov    %esp,%fs:(%edx)
425b9e:	6a 68                	push   $0x68
425ba0:	8b 45 f8             	mov    -0x8(%ebp),%eax
425ba3:	50                   	push   %eax
425ba4:	e8 b7 10 fe ff       	call   0x406c60
425ba9:	83 f8 10             	cmp    $0x10,%eax
425bac:	7c 2f                	jl     0x425bdd
425bae:	8d 43 04             	lea    0x4(%ebx),%eax
425bb1:	50                   	push   %eax
425bb2:	6a 08                	push   $0x8
425bb4:	6a 00                	push   $0x0
425bb6:	a1 4c b3 4a 00       	mov    0x4ab34c,%eax
425bbb:	50                   	push   %eax
425bbc:	e8 cf 10 fe ff       	call   0x406c90
425bc1:	0f b7 43 02          	movzwl 0x2(%ebx),%eax
425bc5:	8d 44 83 e4          	lea    -0x1c(%ebx,%eax,4),%eax
425bc9:	50                   	push   %eax
425bca:	6a 08                	push   $0x8
425bcc:	6a 08                	push   $0x8
425bce:	a1 4c b3 4a 00       	mov    0x4ab34c,%eax
425bd3:	50                   	push   %eax
425bd4:	e8 b7 10 fe ff       	call   0x406c90
425bd9:	c6 45 ff 01          	movb   $0x1,-0x1(%ebp)
425bdd:	33 c0                	xor    %eax,%eax
425bdf:	5a                   	pop    %edx
425be0:	59                   	pop    %ecx
425be1:	59                   	pop    %ecx
425be2:	64 89 10             	mov    %edx,%fs:(%eax)
425be5:	68 fd 5b 42 00       	push   $0x425bfd
425bea:	8b 45 f8             	mov    -0x8(%ebp),%eax
425bed:	50                   	push   %eax
425bee:	6a 00                	push   $0x0
425bf0:	e8 13 16 fe ff       	call   0x407208
425bf5:	c3                   	ret
425bf6:	e9 b5 e4 fd ff       	jmp    0x4040b0
425bfb:	eb ed                	jmp    0x425bea
425bfd:	0f b6 45 ff          	movzbl -0x1(%ebp),%eax
425c01:	5b                   	pop    %ebx
425c02:	59                   	pop    %ecx
425c03:	59                   	pop    %ecx
425c04:	5d                   	pop    %ebp
425c05:	c3                   	ret
425c06:	8b c0                	mov    %eax,%eax
425c08:	53                   	push   %ebx
425c09:	56                   	push   %esi
425c0a:	57                   	push   %edi
425c0b:	81 c4 fc fb ff ff    	add    $0xfffffbfc,%esp
425c11:	8b f8                	mov    %eax,%edi
425c13:	33 f6                	xor    %esi,%esi
425c15:	66 c7 04 24 00 03    	movw   $0x300,(%esp)
425c1b:	85 ff                	test   %edi,%edi
425c1d:	74 38                	je     0x425c57
425c1f:	6a 00                	push   $0x0
425c21:	e8 92 0f fe ff       	call   0x406bb8
425c26:	8b d8                	mov    %eax,%ebx
425c28:	57                   	push   %edi
425c29:	53                   	push   %ebx
425c2a:	e8 19 11 fe ff       	call   0x406d48
425c2f:	8b f8                	mov    %eax,%edi
425c31:	8d 44 24 04          	lea    0x4(%esp),%eax
425c35:	50                   	push   %eax
425c36:	68 00 01 00 00       	push   $0x100
425c3b:	6a 00                	push   $0x0
425c3d:	53                   	push   %ebx
425c3e:	e8 0d 10 fe ff       	call   0x406c50
425c43:	66 89 44 24 02       	mov    %ax,0x2(%esp)
425c48:	57                   	push   %edi
425c49:	53                   	push   %ebx
425c4a:	e8 f9 10 fe ff       	call   0x406d48
425c4f:	53                   	push   %ebx
425c50:	e8 ab 0f fe ff       	call   0x406c00
425c55:	eb 14                	jmp    0x425c6b
425c57:	66 89 4c 24 02       	mov    %cx,0x2(%esp)
425c5c:	8b c2                	mov    %edx,%eax
425c5e:	8d 54 24 04          	lea    0x4(%esp),%edx
425c62:	03 c9                	add    %ecx,%ecx
425c64:	03 c9                	add    %ecx,%ecx
425c66:	e8 81 d2 fd ff       	call   0x402eec
425c6b:	66 83 7c 24 02 00    	cmpw   $0x0,0x2(%esp)
425c71:	74 2b                	je     0x425c9e
425c73:	66 83 7c 24 02 10    	cmpw   $0x10,0x2(%esp)
425c79:	75 0b                	jne    0x425c86
425c7b:	8b c4                	mov    %esp,%eax
425c7d:	e8 ee fe ff ff       	call   0x425b70
425c82:	84 c0                	test   %al,%al
425c84:	75 0e                	jne    0x425c94
425c86:	0f b7 54 24 02       	movzwl 0x2(%esp),%edx
425c8b:	8d 44 24 04          	lea    0x4(%esp),%eax
425c8f:	e8 70 fd ff ff       	call   0x425a04
425c94:	8b c4                	mov    %esp,%eax
425c96:	50                   	push   %eax
425c97:	e8 4c 0f fe ff       	call   0x406be8
425c9c:	8b f0                	mov    %eax,%esi
425c9e:	8b c6                	mov    %esi,%eax
425ca0:	81 c4 04 04 00 00    	add    $0x404,%esp
425ca6:	5f                   	pop    %edi
425ca7:	5e                   	pop    %esi
425ca8:	5b                   	pop    %ebx
425ca9:	c3                   	ret
425caa:	8b c0                	mov    %eax,%eax
425cac:	53                   	push   %ebx
425cad:	56                   	push   %esi
425cae:	57                   	push   %edi
425caf:	51                   	push   %ecx
425cb0:	8b f9                	mov    %ecx,%edi
425cb2:	8b f2                	mov    %edx,%esi
425cb4:	8b d8                	mov    %eax,%ebx
425cb6:	33 c0                	xor    %eax,%eax
425cb8:	89 04 24             	mov    %eax,(%esp)
425cbb:	85 db                	test   %ebx,%ebx
425cbd:	74 36                	je     0x425cf5
425cbf:	54                   	push   %esp
425cc0:	6a 04                	push   $0x4
425cc2:	53                   	push   %ebx
425cc3:	e8 c0 0f fe ff       	call   0x406c88
425cc8:	85 c0                	test   %eax,%eax
425cca:	74 29                	je     0x425cf5
425ccc:	83 3c 24 00          	cmpl   $0x0,(%esp)
425cd0:	74 23                	je     0x425cf5
425cd2:	8d 47 01             	lea    0x1(%edi),%eax
425cd5:	3b 04 24             	cmp    (%esp),%eax
425cd8:	7d 03                	jge    0x425cdd
425cda:	89 04 24             	mov    %eax,(%esp)
425cdd:	56                   	push   %esi
425cde:	8b 44 24 04          	mov    0x4(%esp),%eax
425ce2:	50                   	push   %eax
425ce3:	6a 00                	push   $0x0
425ce5:	53                   	push   %ebx
425ce6:	e8 a5 0f fe ff       	call   0x406c90
425ceb:	8b c6                	mov    %esi,%eax
425ced:	8b 14 24             	mov    (%esp),%edx
425cf0:	e8 0f fd ff ff       	call   0x425a04
425cf5:	8b 04 24             	mov    (%esp),%eax
425cf8:	5a                   	pop    %edx