4038f2:	cc                   	int3
4038f3:	cc                   	int3
4038f4:	cc                   	int3
4038f5:	cc                   	int3
4038f6:	cc                   	int3
4038f7:	cc                   	int3
4038f8:	cc                   	int3
4038f9:	cc                   	int3
4038fa:	cc                   	int3
4038fb:	cc                   	int3
4038fc:	cc                   	int3
4038fd:	cc                   	int3
4038fe:	cc                   	int3
4038ff:	cc                   	int3
403900:	cc                   	int3
403901:	cc                   	int3
403902:	cc                   	int3
403903:	cc                   	int3
403904:	cc                   	int3
403905:	cc                   	int3
403906:	cc                   	int3
403907:	cc                   	int3
403908:	cc                   	int3
403909:	cc                   	int3
40390a:	cc                   	int3
40390b:	cc                   	int3
40390c:	cc                   	int3
40390d:	cc                   	int3
40390e:	cc                   	int3
40390f:	cc                   	int3
403910:	53                   	push   %ebx
403911:	8b 5c 24 0c          	mov    0xc(%esp),%ebx
403915:	85 db                	test   %ebx,%ebx
403917:	55                   	push   %ebp
403918:	8b e9                	mov    %ecx,%ebp
40391a:	75 0a                	jne    0x403926
40391c:	e8 51 d8 ff ff       	call   0x401172
403921:	5d                   	pop    %ebp
403922:	5b                   	pop    %ebx
403923:	c2 08 00             	ret    $0x8
403926:	8b 54 24 0c          	mov    0xc(%esp),%edx
40392a:	85 d2                	test   %edx,%edx
40392c:	75 0a                	jne    0x403938
40392e:	68 57 00 07 80       	push   $0x80070057
403933:	e8 b2 d8 ff ff       	call   0x4011ea
403938:	8b 45 00             	mov    0x0(%ebp),%eax
40393b:	56                   	push   %esi
40393c:	8b f2                	mov    %edx,%esi
40393e:	2b f0                	sub    %eax,%esi
403940:	b9 01 00 00 00       	mov    $0x1,%ecx
403945:	2b 48 fc             	sub    -0x4(%eax),%ecx
403948:	57                   	push   %edi
403949:	8b 78 f4             	mov    -0xc(%eax),%edi
40394c:	8b 40 f8             	mov    -0x8(%eax),%eax
40394f:	2b c3                	sub    %ebx,%eax
403951:	0b c8                	or     %eax,%ecx
403953:	7d 0c                	jge    0x403961
403955:	53                   	push   %ebx
403956:	8b cd                	mov    %ebp,%ecx
403958:	e8 b3 da ff ff       	call   0x401410
40395d:	8b 54 24 14          	mov    0x14(%esp),%edx
403961:	3b f7                	cmp    %edi,%esi
403963:	8b 45 00             	mov    0x0(%ebp),%eax
403966:	77 10                	ja     0x403978
403968:	53                   	push   %ebx
403969:	8d 0c 30             	lea    (%eax,%esi,1),%ecx
40396c:	51                   	push   %ecx
40396d:	50                   	push   %eax
40396e:	e8 ad 36 01 00       	call   0x417020
403973:	83 c4 0c             	add    $0xc,%esp
403976:	eb 14                	jmp    0x40398c
403978:	8b cb                	mov    %ebx,%ecx
40397a:	8b f2                	mov    %edx,%esi
40397c:	8b d1                	mov    %ecx,%edx
40397e:	c1 e9 02             	shr    $0x2,%ecx
403981:	8b f8                	mov    %eax,%edi
403983:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
403985:	8b ca                	mov    %edx,%ecx
403987:	83 e1 03             	and    $0x3,%ecx
40398a:	f3 a4                	rep movsb %ds:(%esi),%es:(%edi)
40398c:	85 db                	test   %ebx,%ebx
40398e:	5f                   	pop    %edi
40398f:	5e                   	pop    %esi
403990:	7c 9c                	jl     0x40392e
403992:	8b 45 00             	mov    0x0(%ebp),%eax
403995:	3b 58 f8             	cmp    -0x8(%eax),%ebx
403998:	7f 94                	jg     0x40392e
40399a:	89 58 f4             	mov    %ebx,-0xc(%eax)
40399d:	8b 45 00             	mov    0x0(%ebp),%eax
4039a0:	5d                   	pop    %ebp
4039a1:	c6 04 03 00          	movb   $0x0,(%ebx,%eax,1)
4039a5:	5b                   	pop    %ebx
4039a6:	c2 08 00             	ret    $0x8
4039a9:	cc                   	int3
4039aa:	cc                   	int3
4039ab:	cc                   	int3
4039ac:	cc                   	int3
4039ad:	cc                   	int3
4039ae:	cc                   	int3
4039af:	cc                   	int3
4039b0:	cc                   	int3
4039b1:	cc                   	int3
4039b2:	cc                   	int3
4039b3:	cc                   	int3
4039b4:	cc                   	int3
4039b5:	cc                   	int3
4039b6:	cc                   	int3
4039b7:	cc                   	int3
4039b8:	cc                   	int3
4039b9:	cc                   	int3
4039ba:	cc                   	int3
4039bb:	cc                   	int3
4039bc:	cc                   	int3
4039bd:	cc                   	int3
4039be:	cc                   	int3
4039bf:	cc                   	int3
4039c0:	cc                   	int3
4039c1:	cc                   	int3
4039c2:	cc                   	int3
4039c3:	cc                   	int3
4039c4:	cc                   	int3
4039c5:	cc                   	int3
4039c6:	cc                   	int3
4039c7:	cc                   	int3
4039c8:	cc                   	int3
4039c9:	cc                   	int3
4039ca:	cc                   	int3
4039cb:	cc                   	int3
4039cc:	cc                   	int3
4039cd:	cc                   	int3
4039ce:	cc                   	int3
4039cf:	cc                   	int3
4039d0:	56                   	push   %esi
4039d1:	8b f1                	mov    %ecx,%esi
4039d3:	e8 8b d7 ff ff       	call   0x401163
4039d8:	f6 44 24 08 01       	testb  $0x1,0x8(%esp)
4039dd:	74 09                	je     0x4039e8
4039df:	56                   	push   %esi
4039e0:	e8 9b c6 03 00       	call   0x440080
4039e5:	83 c4 04             	add    $0x4,%esp
4039e8:	8b c6                	mov    %esi,%eax
4039ea:	5e                   	pop    %esi
4039eb:	c2 04 00             	ret    $0x4
4039ee:	cc                   	int3
4039ef:	cc                   	int3
4039f0:	cc                   	int3
4039f1:	cc                   	int3
4039f2:	cc                   	int3
4039f3:	cc                   	int3
4039f4:	cc                   	int3
4039f5:	cc                   	int3
4039f6:	cc                   	int3
4039f7:	cc                   	int3
4039f8:	cc                   	int3
4039f9:	cc                   	int3
4039fa:	cc                   	int3
4039fb:	cc                   	int3
4039fc:	cc                   	int3
4039fd:	cc                   	int3
4039fe:	cc                   	int3
4039ff:	cc                   	int3
403a00:	51                   	push   %ecx
403a01:	8b 41 2c             	mov    0x2c(%ecx),%eax
403a04:	83 e8 10             	sub    $0x10,%eax
403a07:	50                   	push   %eax
403a08:	c7 44 24 04 00 00 00 	movl   $0x0,0x4(%esp)
403a0f:	00
403a10:	e8 03 d7 ff ff       	call   0x401118
403a15:	8b c8                	mov    %eax,%ecx
403a17:	8b 44 24 0c          	mov    0xc(%esp),%eax
403a1b:	83 c1 10             	add    $0x10,%ecx
403a1e:	89 08                	mov    %ecx,(%eax)
403a20:	83 c4 08             	add    $0x8,%esp
403a23:	c2 04 00             	ret    $0x4
403a26:	cc                   	int3
403a27:	cc                   	int3
403a28:	cc                   	int3
403a29:	cc                   	int3
403a2a:	cc                   	int3
403a2b:	cc                   	int3
403a2c:	cc                   	int3
403a2d:	cc                   	int3
403a2e:	cc                   	int3
403a2f:	cc                   	int3
403a30:	56                   	push   %esi
403a31:	8b f1                	mov    %ecx,%esi
403a33:	e8 47 d9 ff ff       	call   0x40137f
403a38:	f6 44 24 08 01       	testb  $0x1,0x8(%esp)
403a3d:	74 09                	je     0x403a48
403a3f:	56                   	push   %esi
403a40:	e8 3b c6 03 00       	call   0x440080
403a45:	83 c4 04             	add    $0x4,%esp
403a48:	8b c6                	mov    %esi,%eax
403a4a:	5e                   	pop    %esi
403a4b:	c2 04 00             	ret    $0x4
403a4e:	cc                   	int3
403a4f:	cc                   	int3
403a50:	cc                   	int3
403a51:	cc                   	int3
403a52:	cc                   	int3
403a53:	cc                   	int3
403a54:	cc                   	int3
403a55:	cc                   	int3
403a56:	cc                   	int3
403a57:	cc                   	int3
403a58:	cc                   	int3
403a59:	cc                   	int3
403a5a:	cc                   	int3
403a5b:	cc                   	int3
403a5c:	cc                   	int3
403a5d:	cc                   	int3
403a5e:	cc                   	int3
403a5f:	cc                   	int3
403a60:	51                   	push   %ecx
403a61:	8b 41 18             	mov    0x18(%ecx),%eax
403a64:	83 e8 10             	sub    $0x10,%eax
403a67:	50                   	push   %eax
403a68:	c7 44 24 04 00 00 00 	movl   $0x0,0x4(%esp)
403a6f:	00
403a70:	e8 a3 d6 ff ff       	call   0x401118
403a75:	8b c8                	mov    %eax,%ecx
403a77:	8b 44 24 0c          	mov    0xc(%esp),%eax
403a7b:	83 c1 10             	add    $0x10,%ecx
403a7e:	89 08                	mov    %ecx,(%eax)
403a80:	83 c4 08             	add    $0x8,%esp
403a83:	c2 04 00             	ret    $0x4
403a86:	cc                   	int3
403a87:	cc                   	int3
403a88:	cc                   	int3
403a89:	cc                   	int3
403a8a:	cc                   	int3
403a8b:	cc                   	int3
403a8c:	cc                   	int3
403a8d:	cc                   	int3
403a8e:	cc                   	int3
403a8f:	cc                   	int3
403a90:	53                   	push   %ebx
403a91:	8b 5c 24 08          	mov    0x8(%esp),%ebx
403a95:	85 db                	test   %ebx,%ebx
403a97:	57                   	push   %edi
403a98:	8b f9                	mov    %ecx,%edi
403a9a:	75 0a                	jne    0x403aa6
403a9c:	68 57 00 07 80       	push   $0x80070057
403aa1:	e8 44 d7 ff ff       	call   0x4011ea
403aa6:	55                   	push   %ebp
403aa7:	8b 6c 24 14          	mov    0x14(%esp),%ebp
403aab:	56                   	push   %esi
403aac:	55                   	push   %ebp
403aad:	53                   	push   %ebx
403aae:	e8 31 35 01 00       	call   0x416fe4
403ab3:	8b f0                	mov    %eax,%esi
403ab5:	8b 07                	mov    (%edi),%eax
403ab7:	8b 50 fc             	mov    -0x4(%eax),%edx
403aba:	83 e8 10             	sub    $0x10,%eax
403abd:	b9 01 00 00 00       	mov    $0x1,%ecx
403ac2:	2b ca                	sub    %edx,%ecx
403ac4:	8b 50 08             	mov    0x8(%eax),%edx
403ac7:	2b d6                	sub    %esi,%edx
403ac9:	83 c4 08             	add    $0x8,%esp
403acc:	0b ca                	or     %edx,%ecx
403ace:	7d 08                	jge    0x403ad8
403ad0:	56                   	push   %esi
403ad1:	8b cf                	mov    %edi,%ecx
403ad3:	e8 38 d9 ff ff       	call   0x401410
403ad8:	8b 07                	mov    (%edi),%eax
403ada:	55                   	push   %ebp
403adb:	53                   	push   %ebx
403adc:	50                   	push   %eax
403add:	e8 ab 34 01 00       	call   0x416f8d
403ae2:	83 c4 0c             	add    $0xc,%esp
403ae5:	85 f6                	test   %esi,%esi
403ae7:	7c 17                	jl     0x403b00
403ae9:	8b 07                	mov    (%edi),%eax
403aeb:	3b 70 f8             	cmp    -0x8(%eax),%esi
403aee:	7f 10                	jg     0x403b00
403af0:	89 70 f4             	mov    %esi,-0xc(%eax)
403af3:	8b 0f                	mov    (%edi),%ecx
403af5:	c6 04 0e 00          	movb   $0x0,(%esi,%ecx,1)
403af9:	5e                   	pop    %esi
403afa:	5d                   	pop    %ebp
403afb:	5f                   	pop    %edi
403afc:	5b                   	pop    %ebx
403afd:	c2 08 00             	ret    $0x8
403b00:	68 57 00 07 80       	push   $0x80070057
403b05:	e8 e0 d6 ff ff       	call   0x4011ea
403b0a:	cc                   	int3
403b0b:	cc                   	int3
403b0c:	cc                   	int3
403b0d:	cc                   	int3
403b0e:	cc                   	int3
403b0f:	cc                   	int3
403b10:	cc                   	int3
403b11:	cc                   	int3
403b12:	cc                   	int3
403b13:	cc                   	int3
403b14:	cc                   	int3
403b15:	cc                   	int3
403b16:	cc                   	int3
403b17:	cc                   	int3
403b18:	cc                   	int3
403b19:	cc                   	int3
403b1a:	cc                   	int3
403b1b:	cc                   	int3
403b1c:	cc                   	int3
403b1d:	cc                   	int3
403b1e:	cc                   	int3
403b1f:	cc                   	int3
403b20:	cc                   	int3
403b21:	cc                   	int3
403b22:	cc                   	int3
403b23:	cc                   	int3
403b24:	cc                   	int3
403b25:	cc                   	int3
403b26:	cc                   	int3
403b27:	cc                   	int3
403b28:	cc                   	int3
403b29:	cc                   	int3
403b2a:	cc                   	int3
403b2b:	cc                   	int3
403b2c:	cc                   	int3
403b2d:	cc                   	int3
403b2e:	cc                   	int3
403b2f:	cc                   	int3
403b30:	8b 44 24 14          	mov    0x14(%esp),%eax
403b34:	53                   	push   %ebx
403b35:	55                   	push   %ebp
403b36:	8b 6c 24 0c          	mov    0xc(%esp),%ebp
403b3a:	56                   	push   %esi
403b3b:	8b 74 24 18          	mov    0x18(%esp),%esi
403b3f:	8d 1c 06             	lea    (%esi,%eax,1),%ebx
403b42:	8b 45 00             	mov    0x0(%ebp),%eax
403b45:	8b 50 fc             	mov    -0x4(%eax),%edx
403b48:	83 e8 10             	sub    $0x10,%eax
403b4b:	b9 01 00 00 00       	mov    $0x1,%ecx
403b50:	2b ca                	sub    %edx,%ecx
403b52:	8b 50 08             	mov    0x8(%eax),%edx
403b55:	2b d3                	sub    %ebx,%edx
403b57:	0b ca                	or     %edx,%ecx
403b59:	7d 08                	jge    0x403b63
403b5b:	53                   	push   %ebx
403b5c:	8b cd                	mov    %ebp,%ecx
403b5e:	e8 ad d8 ff ff       	call   0x401410
403b63:	8b 45 00             	mov    0x0(%ebp),%eax
403b66:	8b ce                	mov    %esi,%ecx
403b68:	8b 74 24 14          	mov    0x14(%esp),%esi
403b6c:	8b d1                	mov    %ecx,%edx
403b6e:	c1 e9 02             	shr    $0x2,%ecx
403b71:	57                   	push   %edi
403b72:	8b f8                	mov    %eax,%edi
403b74:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)