405805:	72 32                	jb     0x405839
405807:	8b 55 c8             	mov    -0x38(%ebp),%edx
40580a:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
405811:	8b c2                	mov    %edx,%eax
405813:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
405819:	72 14                	jb     0x40582f
40581b:	8b 50 fc             	mov    -0x4(%eax),%edx
40581e:	83 c1 23             	add    $0x23,%ecx
405821:	2b c2                	sub    %edx,%eax
405823:	83 c0 fc             	add    $0xfffffffc,%eax
405826:	83 f8 1f             	cmp    $0x1f,%eax
405829:	0f 87 ff 01 00 00    	ja     0x405a2e
40582f:	51                   	push   %ecx
405830:	52                   	push   %edx
405831:	e8 d2 41 06 00       	call   0x469a08
405836:	83 c4 08             	add    $0x8,%esp
405839:	33 c0                	xor    %eax,%eax
40583b:	c7 45 d8 00 00 00 00 	movl   $0x0,-0x28(%ebp)
405842:	c7 45 dc 07 00 00 00 	movl   $0x7,-0x24(%ebp)
405849:	8b d3                	mov    %ebx,%edx
40584b:	66 89 45 c8          	mov    %ax,-0x38(%ebp)
40584f:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
405856:	83 7b 14 08          	cmpl   $0x8,0x14(%ebx)
40585a:	72 02                	jb     0x40585e
40585c:	8b 13                	mov    (%ebx),%edx
40585e:	8b 47 40             	mov    0x40(%edi),%eax
405861:	52                   	push   %edx
405862:	68 70 f5 4a 00       	push   $0x4af570
405867:	50                   	push   %eax
405868:	8b 08                	mov    (%eax),%ecx
40586a:	8b 71 04             	mov    0x4(%ecx),%esi
40586d:	8b ce                	mov    %esi,%ecx
40586f:	ff 15 d4 e2 49 00    	call   *0x49e2d4
405875:	ff d6                	call   *%esi
405877:	83 c4 0c             	add    $0xc,%esp
40587a:	68 f4 01 00 00       	push   $0x1f4
40587f:	ff 15 b0 e0 49 00    	call   *0x49e0b0
405885:	8b 4f 24             	mov    0x24(%edi),%ecx
405888:	6a 00                	push   $0x0
40588a:	57                   	push   %edi
40588b:	68 40 3e 40 00       	push   $0x403e40
405890:	68 c0 27 09 00       	push   $0x927c0
405895:	6a 01                	push   $0x1
405897:	53                   	push   %ebx
405898:	6a 03                	push   $0x3
40589a:	e8 f1 88 01 00       	call   0x41e190
40589f:	85 c0                	test   %eax,%eax
4058a1:	74 57                	je     0x4058fa
4058a3:	8b 4f 40             	mov    0x40(%edi),%ecx
4058a6:	50                   	push   %eax
4058a7:	68 f0 f5 4a 00       	push   $0x4af5f0
4058ac:	68 60 ea 4a 00       	push   $0x4aea60
4058b1:	8b 31                	mov    (%ecx),%esi
4058b3:	51                   	push   %ecx
4058b4:	8b 76 24             	mov    0x24(%esi),%esi
4058b7:	8b ce                	mov    %esi,%ecx
4058b9:	ff 15 d4 e2 49 00    	call   *0x49e2d4
4058bf:	ff d6                	call   *%esi
4058c1:	83 c4 10             	add    $0x10,%esp
4058c4:	83 7b 14 08          	cmpl   $0x8,0x14(%ebx)
4058c8:	72 02                	jb     0x4058cc
4058ca:	8b 1b                	mov    (%ebx),%ebx
4058cc:	8b 47 40             	mov    0x40(%edi),%eax
4058cf:	53                   	push   %ebx
4058d0:	68 28 f5 4a 00       	push   $0x4af528
4058d5:	68 60 ea 4a 00       	push   $0x4aea60
4058da:	8b 30                	mov    (%eax),%esi
4058dc:	50                   	push   %eax
4058dd:	8b 76 24             	mov    0x24(%esi),%esi
4058e0:	8b ce                	mov    %esi,%ecx
4058e2:	ff 15 d4 e2 49 00    	call   *0x49e2d4
4058e8:	ff d6                	call   *%esi
4058ea:	8b 5d e8             	mov    -0x18(%ebp),%ebx
4058ed:	83 c4 10             	add    $0x10,%esp
4058f0:	68 08 fe 4a 00       	push   $0x4afe08
4058f5:	e9 8f 00 00 00       	jmp    0x405989
4058fa:	8d 45 ec             	lea    -0x14(%ebp),%eax
4058fd:	50                   	push   %eax
4058fe:	6a 04                	push   $0x4
405900:	57                   	push   %edi
405901:	68 f0 40 40 00       	push   $0x4040f0
405906:	6a 00                	push   $0x0
405908:	6a 00                	push   $0x0
40590a:	ff 15 a8 e0 49 00    	call   *0x49e0a8
405910:	89 47 04             	mov    %eax,0x4(%edi)
405913:	85 c0                	test   %eax,%eax
405915:	75 22                	jne    0x405939
405917:	8b 47 40             	mov    0x40(%edi),%eax
40591a:	68 78 f6 4a 00       	push   $0x4af678
40591f:	68 60 ea 4a 00       	push   $0x4aea60
405924:	50                   	push   %eax
405925:	8b 08                	mov    (%eax),%ecx
405927:	8b 71 24             	mov    0x24(%ecx),%esi
40592a:	8b ce                	mov    %esi,%ecx
40592c:	ff 15 d4 e2 49 00    	call   *0x49e2d4
405932:	ff d6                	call   *%esi
405934:	83 c4 0c             	add    $0xc,%esp
405937:	eb 40                	jmp    0x405979
405939:	50                   	push   %eax
40593a:	ff 15 ac e0 49 00    	call   *0x49e0ac
405940:	83 f8 ff             	cmp    $0xffffffff,%eax
405943:	0f 85 97 00 00 00    	jne    0x4059e0
405949:	8b 47 40             	mov    0x40(%edi),%eax
40594c:	68 00 f7 4a 00       	push   $0x4af700
405951:	68 60 ea 4a 00       	push   $0x4aea60
405956:	50                   	push   %eax
405957:	8b 08                	mov    (%eax),%ecx
405959:	8b 71 24             	mov    0x24(%ecx),%esi
40595c:	8b ce                	mov    %esi,%ecx
40595e:	ff 15 d4 e2 49 00    	call   *0x49e2d4
405964:	ff d6                	call   *%esi
405966:	83 c4 0c             	add    $0xc,%esp
405969:	ff 77 04             	push   0x4(%edi)
40596c:	ff 15 64 e0 49 00    	call   *0x49e064
405972:	c7 47 04 00 00 00 00 	movl   $0x0,0x4(%edi)
405979:	8b 5d e8             	mov    -0x18(%ebp),%ebx
40597c:	8b 4b 0c             	mov    0xc(%ebx),%ecx
40597f:	e8 ac a0 01 00       	call   0x41fa30
405984:	68 b0 fe 4a 00       	push   $0x4afeb0
405989:	8b 03                	mov    (%ebx),%eax
40598b:	68 60 ea 4a 00       	push   $0x4aea60
405990:	50                   	push   %eax
405991:	8b 08                	mov    (%eax),%ecx
405993:	8b 71 24             	mov    0x24(%ecx),%esi
405996:	8b ce                	mov    %esi,%ecx
405998:	ff 15 d4 e2 49 00    	call   *0x49e2d4
40599e:	ff d6                	call   *%esi
4059a0:	83 c4 0c             	add    $0xc,%esp
4059a3:	8b cf                	mov    %edi,%ecx
4059a5:	e8 46 e5 ff ff       	call   0x403ef0
4059aa:	6a 48                	push   $0x48
4059ac:	57                   	push   %edi
4059ad:	e8 56 40 06 00       	call   0x469a08
4059b2:	8b 03                	mov    (%ebx),%eax
4059b4:	83 c4 08             	add    $0x8,%esp
4059b7:	8b 08                	mov    (%eax),%ecx
4059b9:	68 f8 fe 4a 00       	push   $0x4afef8
4059be:	68 60 ea 4a 00       	push   $0x4aea60
4059c3:	50                   	push   %eax
4059c4:	8b 71 24             	mov    0x24(%ecx),%esi
4059c7:	8b ce                	mov    %esi,%ecx
4059c9:	ff 15 d4 e2 49 00    	call   *0x49e2d4
4059cf:	ff d6                	call   *%esi
4059d1:	8b 4b 0c             	mov    0xc(%ebx),%ecx
4059d4:	83 c4 0c             	add    $0xc,%esp
4059d7:	e8 54 a0 01 00       	call   0x41fa30
4059dc:	32 c0                	xor    %al,%al
4059de:	eb 32                	jmp    0x405a12
4059e0:	8b 5d e8             	mov    -0x18(%ebp),%ebx
4059e3:	8b 45 ec             	mov    -0x14(%ebp),%eax
4059e6:	89 07                	mov    %eax,(%edi)
4059e8:	68 60 fe 4a 00       	push   $0x4afe60
4059ed:	8b 03                	mov    (%ebx),%eax
4059ef:	50                   	push   %eax
4059f0:	8b 08                	mov    (%eax),%ecx
4059f2:	8b 71 14             	mov    0x14(%ecx),%esi
4059f5:	8b ce                	mov    %esi,%ecx
4059f7:	ff 15 d4 e2 49 00    	call   *0x49e2d4
4059fd:	ff d6                	call   *%esi
4059ff:	83 c4 08             	add    $0x8,%esp
405a02:	8d 43 28             	lea    0x28(%ebx),%eax
405a05:	8d 4b 04             	lea    0x4(%ebx),%ecx
405a08:	50                   	push   %eax
405a09:	e8 32 00 00 00       	call   0x405a40
405a0e:	89 38                	mov    %edi,(%eax)
405a10:	b0 01                	mov    $0x1,%al
405a12:	8b 4d f4             	mov    -0xc(%ebp),%ecx
405a15:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
405a1c:	59                   	pop    %ecx
405a1d:	5f                   	pop    %edi
405a1e:	5e                   	pop    %esi
405a1f:	5b                   	pop    %ebx
405a20:	8b 4d f0             	mov    -0x10(%ebp),%ecx
405a23:	33 cd                	xor    %ebp,%ecx
405a25:	e8 a0 3f 06 00       	call   0x4699ca
405a2a:	8b e5                	mov    %ebp,%esp
405a2c:	5d                   	pop    %ebp
405a2d:	c3                   	ret
405a2e:	e8 fe 3b 07 00       	call   0x479631
405a33:	cc                   	int3
405a34:	cc                   	int3
405a35:	cc                   	int3
405a36:	cc                   	int3
405a37:	cc                   	int3
405a38:	cc                   	int3
405a39:	cc                   	int3
405a3a:	cc                   	int3
405a3b:	cc                   	int3
405a3c:	cc                   	int3
405a3d:	cc                   	int3
405a3e:	cc                   	int3
405a3f:	cc                   	int3
405a40:	55                   	push   %ebp
405a41:	8b ec                	mov    %esp,%ebp
405a43:	6a ff                	push   $0xffffffff
405a45:	68 75 77 49 00       	push   $0x497775
405a4a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
405a50:	50                   	push   %eax
405a51:	83 ec 1c             	sub    $0x1c,%esp
405a54:	53                   	push   %ebx
405a55:	56                   	push   %esi
405a56:	57                   	push   %edi
405a57:	a1 14 40 4c 00       	mov    0x4c4014,%eax
405a5c:	33 c5                	xor    %ebp,%eax
405a5e:	50                   	push   %eax
405a5f:	8d 45 f4             	lea    -0xc(%ebp),%eax
405a62:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
405a68:	8b f9                	mov    %ecx,%edi
405a6a:	89 7d ec             	mov    %edi,-0x14(%ebp)
405a6d:	8b 5d 08             	mov    0x8(%ebp),%ebx
405a70:	8d 45 d8             	lea    -0x28(%ebp),%eax
405a73:	53                   	push   %ebx
405a74:	50                   	push   %eax
405a75:	89 5d f0             	mov    %ebx,-0x10(%ebp)
405a78:	e8 73 e0 ff ff       	call   0x403af0
405a7d:	8b 75 e0             	mov    -0x20(%ebp),%esi
405a80:	80 7e 0d 00          	cmpb   $0x0,0xd(%esi)
405a84:	75 2c                	jne    0x405ab2
405a86:	83 7e 24 08          	cmpl   $0x8,0x24(%esi)
405a8a:	8d 56 10             	lea    0x10(%esi),%edx
405a8d:	72 03                	jb     0x405a92
405a8f:	8b 56 10             	mov    0x10(%esi),%edx
405a92:	83 7b 14 08          	cmpl   $0x8,0x14(%ebx)
405a96:	8b cb                	mov    %ebx,%ecx
405a98:	72 02                	jb     0x405a9c
405a9a:	8b 0b                	mov    (%ebx),%ecx
405a9c:	ff 76 20             	push   0x20(%esi)
405a9f:	52                   	push   %edx
405aa0:	8b 53 10             	mov    0x10(%ebx),%edx
405aa3:	e8 78 e1 ff ff       	call   0x403c20
405aa8:	c1 e8 1f             	shr    $0x1f,%eax
405aab:	83 c4 08             	add    $0x8,%esp
405aae:	84 c0                	test   %al,%al
405ab0:	74 63                	je     0x405b15
405ab2:	81 7f 04 5d 74 d1 05 	cmpl   $0x5d1745d,0x4(%edi)
405ab9:	74 71                	je     0x405b2c
405abb:	8b 1f                	mov    (%edi),%ebx
405abd:	89 7d e4             	mov    %edi,-0x1c(%ebp)
405ac0:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
405ac7:	6a 2c                	push   $0x2c
405ac9:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
405ad0:	e8 03 3f 06 00       	call   0x4699d8
405ad5:	8b f8                	mov    %eax,%edi
405ad7:	83 c4 04             	add    $0x4,%esp
405ada:	89 7d e8             	mov    %edi,-0x18(%ebp)
405add:	ff 75 f0             	push   -0x10(%ebp)
405ae0:	8d 4f 10             	lea    0x10(%edi),%ecx
405ae3:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
405aea:	e8 81 da ff ff       	call   0x403570
405aef:	8b 4d ec             	mov    -0x14(%ebp),%ecx
405af2:	57                   	push   %edi
405af3:	ff 75 dc             	push   -0x24(%ebp)
405af6:	c7 47 28 00 00 00 00 	movl   $0x0,0x28(%edi)
405afd:	ff 75 d8             	push   -0x28(%ebp)
405b00:	89 1f                	mov    %ebx,(%edi)
405b02:	89 5f 04             	mov    %ebx,0x4(%edi)
405b05:	89 5f 08             	mov    %ebx,0x8(%edi)
405b08:	66 c7 47 0c 00 00    	movw   $0x0,0xc(%edi)
405b0e:	e8 cd dd ff ff       	call   0x4038e0
405b13:	8b f0                	mov    %eax,%esi
405b15:	8d 46 28             	lea    0x28(%esi),%eax
405b18:	8b 4d f4             	mov    -0xc(%ebp),%ecx
405b1b:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
405b22:	59                   	pop    %ecx
405b23:	5f                   	pop    %edi
405b24:	5e                   	pop    %esi
405b25:	5b                   	pop    %ebx
405b26:	8b e5                	mov    %ebp,%esp
405b28:	5d                   	pop    %ebp
405b29:	c2 04 00             	ret    $0x4
405b2c:	e8 8f db ff ff       	call   0x4036c0
405b31:	cc                   	int3
405b32:	cc                   	int3
405b33:	cc                   	int3
405b34:	cc                   	int3
405b35:	cc                   	int3
405b36:	cc                   	int3
405b37:	cc                   	int3
405b38:	cc                   	int3
405b39:	cc                   	int3
405b3a:	cc                   	int3
405b3b:	cc                   	int3
405b3c:	cc                   	int3
405b3d:	cc                   	int3
405b3e:	cc                   	int3
405b3f:	cc                   	int3
405b40:	55                   	push   %ebp
405b41:	8b ec                	mov    %esp,%ebp
405b43:	56                   	push   %esi
405b44:	57                   	push   %edi
405b45:	8b 7d 08             	mov    0x8(%ebp),%edi
405b48:	8b f1                	mov    %ecx,%esi
405b4a:	3b f7                	cmp    %edi,%esi
405b4c:	74 61                	je     0x405baf
405b4e:	8b 4e 14             	mov    0x14(%esi),%ecx
405b51:	83 f9 10             	cmp    $0x10,%ecx
405b54:	72 27                	jb     0x405b7d
405b56:	8b 06                	mov    (%esi),%eax
405b58:	41                   	inc    %ecx
405b59:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
405b5f:	72 12                	jb     0x405b73
405b61:	8b 50 fc             	mov    -0x4(%eax),%edx
405b64:	83 c1 23             	add    $0x23,%ecx
405b67:	2b c2                	sub    %edx,%eax
405b69:	83 c0 fc             	add    $0xfffffffc,%eax
405b6c:	83 f8 1f             	cmp    $0x1f,%eax
405b6f:	77 46                	ja     0x405bb7
405b71:	8b c2                	mov    %edx,%eax
405b73:	51                   	push   %ecx
405b74:	50                   	push   %eax
405b75:	e8 8e 3e 06 00       	call   0x469a08
405b7a:	83 c4 08             	add    $0x8,%esp
405b7d:	c7 46 10 00 00 00 00 	movl   $0x0,0x10(%esi)
405b84:	c7 46 14 0f 00 00 00 	movl   $0xf,0x14(%esi)
405b8b:	c6 06 00             	movb   $0x0,(%esi)
405b8e:	0f 10 07             	movups (%edi),%xmm0
405b91:	0f 11 06             	movups %xmm0,(%esi)
405b94:	f3 0f 7e 47 10       	movq   0x10(%edi),%xmm0
405b99:	66 0f d6 46 10       	movq   %xmm0,0x10(%esi)
405b9e:	c7 47 10 00 00 00 00 	movl   $0x0,0x10(%edi)
405ba5:	c7 47 14 0f 00 00 00 	movl   $0xf,0x14(%edi)
405bac:	c6 07 00             	movb   $0x0,(%edi)
405baf:	5f                   	pop    %edi
405bb0:	8b c6                	mov    %esi,%eax
405bb2:	5e                   	pop    %esi
405bb3:	5d                   	pop    %ebp
405bb4:	c2 04 00             	ret    $0x4
405bb7:	e8 75 3a 07 00       	call   0x479631
405bbc:	cc                   	int3
405bbd:	cc                   	int3
405bbe:	cc                   	int3
405bbf:	cc                   	int3
405bc0:	55                   	push   %ebp
405bc1:	8b ec                	mov    %esp,%ebp
405bc3:	51                   	push   %ecx
405bc4:	8b 45 08             	mov    0x8(%ebp),%eax
405bc7:	53                   	push   %ebx
405bc8:	57                   	push   %edi
405bc9:	8b 7d 0c             	mov    0xc(%ebp),%edi
405bcc:	8b d9                	mov    %ecx,%ebx
405bce:	89 45 fc             	mov    %eax,-0x4(%ebp)
405bd1:	80 7f 0d 00          	cmpb   $0x0,0xd(%edi)
405bd5:	75 71                	jne    0x405c48
405bd7:	56                   	push   %esi
405bd8:	ff 77 08             	push   0x8(%edi)
405bdb:	8b cb                	mov    %ebx,%ecx
405bdd:	50                   	push   %eax
405bde:	e8 dd ff ff ff       	call   0x405bc0
405be3:	8b f7                	mov    %edi,%esi
405be5:	8b 3f                	mov    (%edi),%edi