4118b3:	8b 09                	mov    (%ecx),%ecx
4118b5:	89 0b                	mov    %ecx,(%ebx)
4118b7:	8b 08                	mov    (%eax),%ecx
4118b9:	8b 49 04             	mov    0x4(%ecx),%ecx
4118bc:	89 4b 04             	mov    %ecx,0x4(%ebx)
4118bf:	8b 00                	mov    (%eax),%eax
4118c1:	8b 40 08             	mov    0x8(%eax),%eax
4118c4:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4118c7:	89 43 08             	mov    %eax,0x8(%ebx)
4118ca:	33 c0                	xor    %eax,%eax
4118cc:	40                   	inc    %eax
4118cd:	33 ff                	xor    %edi,%edi
4118cf:	39 7d fc             	cmp    %edi,-0x4(%ebp)
4118d2:	89 01                	mov    %eax,(%ecx)
4118d4:	74 05                	je     0x4118db
4118d6:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4118d9:	89 01                	mov    %eax,(%ecx)
4118db:	8b 86 b8 00 00 00    	mov    0xb8(%esi),%eax
4118e1:	3b c7                	cmp    %edi,%eax
4118e3:	74 07                	je     0x4118ec
4118e5:	50                   	push   %eax
4118e6:	ff 15 98 70 41 00    	call   *0x417098
4118ec:	8b 86 b0 00 00 00    	mov    0xb0(%esi),%eax
4118f2:	3b c7                	cmp    %edi,%eax
4118f4:	74 23                	je     0x411919
4118f6:	50                   	push   %eax
4118f7:	ff 15 98 70 41 00    	call   *0x417098
4118fd:	85 c0                	test   %eax,%eax
4118ff:	75 18                	jne    0x411919
411901:	ff b6 bc 00 00 00    	push   0xbc(%esi)
411907:	e8 47 4b ff ff       	call   0x406453
41190c:	ff b6 b0 00 00 00    	push   0xb0(%esi)
411912:	e8 3c 4b ff ff       	call   0x406453
411917:	59                   	pop    %ecx
411918:	59                   	pop    %ecx
411919:	8b 45 fc             	mov    -0x4(%ebp),%eax
41191c:	89 86 b8 00 00 00    	mov    %eax,0xb8(%esi)
411922:	8b 45 f8             	mov    -0x8(%ebp),%eax
411925:	89 86 b0 00 00 00    	mov    %eax,0xb0(%esi)
41192b:	89 9e bc 00 00 00    	mov    %ebx,0xbc(%esi)
411931:	33 c0                	xor    %eax,%eax
411933:	5f                   	pop    %edi
411934:	5e                   	pop    %esi
411935:	5b                   	pop    %ebx
411936:	c9                   	leave
411937:	c3                   	ret
411938:	8b 44 24 04          	mov    0x4(%esp),%eax
41193c:	53                   	push   %ebx
41193d:	33 db                	xor    %ebx,%ebx
41193f:	3b c3                	cmp    %ebx,%eax
411941:	56                   	push   %esi
411942:	57                   	push   %edi
411943:	74 08                	je     0x41194d
411945:	8b 7c 24 14          	mov    0x14(%esp),%edi
411949:	3b fb                	cmp    %ebx,%edi
41194b:	77 1b                	ja     0x411968
41194d:	e8 a8 7a ff ff       	call   0x4093fa
411952:	6a 16                	push   $0x16
411954:	5e                   	pop    %esi
411955:	89 30                	mov    %esi,(%eax)
411957:	53                   	push   %ebx
411958:	53                   	push   %ebx
411959:	53                   	push   %ebx
41195a:	53                   	push   %ebx
41195b:	53                   	push   %ebx
41195c:	e8 ef 5c ff ff       	call   0x407650
411961:	83 c4 14             	add    $0x14,%esp
411964:	8b c6                	mov    %esi,%eax
411966:	eb 3d                	jmp    0x4119a5
411968:	8b 74 24 18          	mov    0x18(%esp),%esi
41196c:	3b f3                	cmp    %ebx,%esi
41196e:	75 04                	jne    0x411974
411970:	88 18                	mov    %bl,(%eax)
411972:	eb d9                	jmp    0x41194d
411974:	8b d0                	mov    %eax,%edx
411976:	38 1a                	cmp    %bl,(%edx)
411978:	74 04                	je     0x41197e
41197a:	42                   	inc    %edx
41197b:	4f                   	dec    %edi
41197c:	75 f8                	jne    0x411976
41197e:	3b fb                	cmp    %ebx,%edi
411980:	74 ee                	je     0x411970
411982:	8a 0e                	mov    (%esi),%cl
411984:	88 0a                	mov    %cl,(%edx)
411986:	42                   	inc    %edx
411987:	46                   	inc    %esi
411988:	3a cb                	cmp    %bl,%cl
41198a:	74 03                	je     0x41198f
41198c:	4f                   	dec    %edi
41198d:	75 f3                	jne    0x411982
41198f:	3b fb                	cmp    %ebx,%edi
411991:	75 10                	jne    0x4119a3
411993:	88 18                	mov    %bl,(%eax)
411995:	e8 60 7a ff ff       	call   0x4093fa
41199a:	6a 22                	push   $0x22
41199c:	59                   	pop    %ecx
41199d:	89 08                	mov    %ecx,(%eax)
41199f:	8b f1                	mov    %ecx,%esi
4119a1:	eb b4                	jmp    0x411957
4119a3:	33 c0                	xor    %eax,%eax
4119a5:	5f                   	pop    %edi
4119a6:	5e                   	pop    %esi
4119a7:	5b                   	pop    %ebx
4119a8:	c3                   	ret
4119a9:	cc                   	int3
4119aa:	cc                   	int3
4119ab:	cc                   	int3
4119ac:	cc                   	int3
4119ad:	cc                   	int3
4119ae:	cc                   	int3
4119af:	cc                   	int3
4119b0:	55                   	push   %ebp
4119b1:	8b ec                	mov    %esp,%ebp
4119b3:	56                   	push   %esi
4119b4:	33 c0                	xor    %eax,%eax
4119b6:	50                   	push   %eax
4119b7:	50                   	push   %eax
4119b8:	50                   	push   %eax
4119b9:	50                   	push   %eax
4119ba:	50                   	push   %eax
4119bb:	50                   	push   %eax
4119bc:	50                   	push   %eax
4119bd:	50                   	push   %eax
4119be:	8b 55 0c             	mov    0xc(%ebp),%edx
4119c1:	8d 49 00             	lea    0x0(%ecx),%ecx
4119c4:	8a 02                	mov    (%edx),%al
4119c6:	0a c0                	or     %al,%al
4119c8:	74 09                	je     0x4119d3
4119ca:	83 c2 01             	add    $0x1,%edx
4119cd:	0f ab 04 24          	bts    %eax,(%esp)
4119d1:	eb f1                	jmp    0x4119c4
4119d3:	8b 75 08             	mov    0x8(%ebp),%esi
4119d6:	83 c9 ff             	or     $0xffffffff,%ecx
4119d9:	8d 49 00             	lea    0x0(%ecx),%ecx
4119dc:	83 c1 01             	add    $0x1,%ecx
4119df:	8a 06                	mov    (%esi),%al
4119e1:	0a c0                	or     %al,%al
4119e3:	74 09                	je     0x4119ee
4119e5:	83 c6 01             	add    $0x1,%esi
4119e8:	0f a3 04 24          	bt     %eax,(%esp)
4119ec:	73 ee                	jae    0x4119dc
4119ee:	8b c1                	mov    %ecx,%eax
4119f0:	83 c4 20             	add    $0x20,%esp
4119f3:	5e                   	pop    %esi
4119f4:	c9                   	leave
4119f5:	c3                   	ret
4119f6:	55                   	push   %ebp
4119f7:	8b ec                	mov    %esp,%ebp
4119f9:	53                   	push   %ebx
4119fa:	56                   	push   %esi
4119fb:	8b 75 08             	mov    0x8(%ebp),%esi
4119fe:	33 db                	xor    %ebx,%ebx
411a00:	39 5d 14             	cmp    %ebx,0x14(%ebp)
411a03:	57                   	push   %edi
411a04:	75 10                	jne    0x411a16
411a06:	3b f3                	cmp    %ebx,%esi
411a08:	75 10                	jne    0x411a1a
411a0a:	39 5d 0c             	cmp    %ebx,0xc(%ebp)
411a0d:	75 12                	jne    0x411a21
411a0f:	33 c0                	xor    %eax,%eax
411a11:	5f                   	pop    %edi
411a12:	5e                   	pop    %esi
411a13:	5b                   	pop    %ebx
411a14:	5d                   	pop    %ebp
411a15:	c3                   	ret
411a16:	3b f3                	cmp    %ebx,%esi
411a18:	74 07                	je     0x411a21
411a1a:	8b 7d 0c             	mov    0xc(%ebp),%edi
411a1d:	3b fb                	cmp    %ebx,%edi
411a1f:	77 1b                	ja     0x411a3c
411a21:	e8 d4 79 ff ff       	call   0x4093fa
411a26:	6a 16                	push   $0x16
411a28:	5e                   	pop    %esi
411a29:	89 30                	mov    %esi,(%eax)
411a2b:	53                   	push   %ebx
411a2c:	53                   	push   %ebx
411a2d:	53                   	push   %ebx
411a2e:	53                   	push   %ebx
411a2f:	53                   	push   %ebx
411a30:	e8 1b 5c ff ff       	call   0x407650
411a35:	83 c4 14             	add    $0x14,%esp
411a38:	8b c6                	mov    %esi,%eax
411a3a:	eb d5                	jmp    0x411a11
411a3c:	39 5d 14             	cmp    %ebx,0x14(%ebp)
411a3f:	75 04                	jne    0x411a45
411a41:	88 1e                	mov    %bl,(%esi)
411a43:	eb ca                	jmp    0x411a0f
411a45:	8b 55 10             	mov    0x10(%ebp),%edx
411a48:	3b d3                	cmp    %ebx,%edx
411a4a:	75 04                	jne    0x411a50
411a4c:	88 1e                	mov    %bl,(%esi)
411a4e:	eb d1                	jmp    0x411a21
411a50:	83 7d 14 ff          	cmpl   $0xffffffff,0x14(%ebp)
411a54:	8b c6                	mov    %esi,%eax
411a56:	75 0f                	jne    0x411a67
411a58:	8a 0a                	mov    (%edx),%cl
411a5a:	88 08                	mov    %cl,(%eax)
411a5c:	40                   	inc    %eax
411a5d:	42                   	inc    %edx
411a5e:	3a cb                	cmp    %bl,%cl
411a60:	74 1e                	je     0x411a80
411a62:	4f                   	dec    %edi
411a63:	75 f3                	jne    0x411a58
411a65:	eb 19                	jmp    0x411a80
411a67:	8a 0a                	mov    (%edx),%cl
411a69:	88 08                	mov    %cl,(%eax)
411a6b:	40                   	inc    %eax
411a6c:	42                   	inc    %edx
411a6d:	3a cb                	cmp    %bl,%cl
411a6f:	74 08                	je     0x411a79
411a71:	4f                   	dec    %edi
411a72:	74 05                	je     0x411a79
411a74:	ff 4d 14             	decl   0x14(%ebp)
411a77:	75 ee                	jne    0x411a67
411a79:	39 5d 14             	cmp    %ebx,0x14(%ebp)
411a7c:	75 02                	jne    0x411a80
411a7e:	88 18                	mov    %bl,(%eax)
411a80:	3b fb                	cmp    %ebx,%edi
411a82:	75 8b                	jne    0x411a0f
411a84:	83 7d 14 ff          	cmpl   $0xffffffff,0x14(%ebp)
411a88:	75 0f                	jne    0x411a99
411a8a:	8b 45 0c             	mov    0xc(%ebp),%eax
411a8d:	6a 50                	push   $0x50
411a8f:	88 5c 06 ff          	mov    %bl,-0x1(%esi,%eax,1)
411a93:	58                   	pop    %eax
411a94:	e9 78 ff ff ff       	jmp    0x411a11
411a99:	88 1e                	mov    %bl,(%esi)
411a9b:	e8 5a 79 ff ff       	call   0x4093fa
411aa0:	6a 22                	push   $0x22
411aa2:	59                   	pop    %ecx
411aa3:	89 08                	mov    %ecx,(%eax)
411aa5:	8b f1                	mov    %ecx,%esi
411aa7:	eb 82                	jmp    0x411a2b
411aa9:	55                   	push   %ebp
411aaa:	8b ec                	mov    %esp,%ebp
411aac:	33 c0                	xor    %eax,%eax
411aae:	53                   	push   %ebx
411aaf:	33 db                	xor    %ebx,%ebx
411ab1:	40                   	inc    %eax
411ab2:	39 5d 0c             	cmp    %ebx,0xc(%ebp)
411ab5:	7c 46                	jl     0x411afd
411ab7:	56                   	push   %esi
411ab8:	57                   	push   %edi
411ab9:	85 c0                	test   %eax,%eax
411abb:	74 3e                	je     0x411afb
411abd:	8b 45 0c             	mov    0xc(%ebp),%eax
411ac0:	03 c3                	add    %ebx,%eax
411ac2:	99                   	cltd
411ac3:	2b c2                	sub    %edx,%eax
411ac5:	8b f0                	mov    %eax,%esi
411ac7:	8b 45 08             	mov    0x8(%ebp),%eax
411aca:	d1 fe                	sar    $1,%esi
411acc:	8d 3c f0             	lea    (%eax,%esi,8),%edi
411acf:	ff 37                	push   (%edi)
411ad1:	8b 45 10             	mov    0x10(%ebp),%eax
411ad4:	ff 30                	push   (%eax)
411ad6:	e8 16 38 00 00       	call   0x4152f1
411adb:	85 c0                	test   %eax,%eax
411add:	59                   	pop    %ecx
411ade:	59                   	pop    %ecx
411adf:	75 0a                	jne    0x411aeb
411ae1:	8b 4d 10             	mov    0x10(%ebp),%ecx
411ae4:	83 c7 04             	add    $0x4,%edi
411ae7:	89 39                	mov    %edi,(%ecx)
411ae9:	eb 0b                	jmp    0x411af6
411aeb:	7d 06                	jge    0x411af3
411aed:	4e                   	dec    %esi
411aee:	89 75 0c             	mov    %esi,0xc(%ebp)
411af1:	eb 03                	jmp    0x411af6
411af3:	8d 5e 01             	lea    0x1(%esi),%ebx
411af6:	3b 5d 0c             	cmp    0xc(%ebp),%ebx
411af9:	7e be                	jle    0x411ab9
411afb:	5f                   	pop    %edi
411afc:	5e                   	pop    %esi
411afd:	33 c9                	xor    %ecx,%ecx
411aff:	85 c0                	test   %eax,%eax
411b01:	0f 94 c1             	sete   %cl
411b04:	5b                   	pop    %ebx
411b05:	8b c1                	mov    %ecx,%eax
411b07:	5d                   	pop    %ebp
411b08:	c3                   	ret
411b09:	55                   	push   %ebp
411b0a:	8b ec                	mov    %esp,%ebp
411b0c:	83 ec 0c             	sub    $0xc,%esp
411b0f:	a1 20 c5 41 00       	mov    0x41c520,%eax
411b14:	33 c5                	xor    %ebp,%eax
411b16:	89 45 fc             	mov    %eax,-0x4(%ebp)
411b19:	56                   	push   %esi
411b1a:	8b f1                	mov    %ecx,%esi
411b1c:	85 f6                	test   %esi,%esi
411b1e:	74 31                	je     0x411b51
411b20:	80 3e 00             	cmpb   $0x0,(%esi)
411b23:	74 2c                	je     0x411b51
411b25:	68 70 8f 41 00       	push   $0x418f70
411b2a:	56                   	push   %esi
411b2b:	e8 60 93 ff ff       	call   0x40ae90
411b30:	85 c0                	test   %eax,%eax
411b32:	59                   	pop    %ecx
411b33:	59                   	pop    %ecx
411b34:	74 1b                	je     0x411b51
411b36:	68 6c 8f 41 00       	push   $0x418f6c
411b3b:	56                   	push   %esi
411b3c:	e8 4f 93 ff ff       	call   0x40ae90
411b41:	85 c0                	test   %eax,%eax
411b43:	59                   	pop    %ecx
411b44:	59                   	pop    %ecx
411b45:	75 25                	jne    0x411b6c
411b47:	6a 08                	push   $0x8
411b49:	8d 45 f4             	lea    -0xc(%ebp),%eax
411b4c:	50                   	push   %eax
411b4d:	6a 0b                	push   $0xb
411b4f:	eb 0b                	jmp    0x411b5c
411b51:	6a 08                	push   $0x8
411b53:	8d 45 f4             	lea    -0xc(%ebp),%eax
411b56:	50                   	push   %eax
411b57:	68 04 10 00 00       	push   $0x1004
411b5c:	ff 77 1c             	push   0x1c(%edi)
411b5f:	ff 15 68 71 41 00    	call   *0x417168
411b65:	85 c0                	test   %eax,%eax
411b67:	74 0a                	je     0x411b73
411b69:	8d 75 f4             	lea    -0xc(%ebp),%esi
411b6c:	56                   	push   %esi
411b6d:	e8 42 33 00 00       	call   0x414eb4
411b72:	59                   	pop    %ecx
411b73:	8b 4d fc             	mov    -0x4(%ebp),%ecx
411b76:	33 cd                	xor    %ebp,%ecx
411b78:	5e                   	pop    %esi
411b79:	e8 b7 43 ff ff       	call   0x405f35
411b7e:	c9                   	leave
411b7f:	c3                   	ret
411b80:	33 c0                	xor    %eax,%eax
411b82:	66 8b 4c 24 04       	mov    0x4(%esp),%cx
411b87:	66 3b 88 58 8f 41 00 	cmp    0x418f58(%eax),%cx
411b8e:	74 0b                	je     0x411b9b
411b90:	40                   	inc    %eax
411b91:	40                   	inc    %eax
411b92:	83 f8 14             	cmp    $0x14,%eax
411b95:	72 eb                	jb     0x411b82
411b97:	33 c0                	xor    %eax,%eax
411b99:	40                   	inc    %eax
411b9a:	c3                   	ret
411b9b:	33 c0                	xor    %eax,%eax
411b9d:	c3                   	ret
411b9e:	56                   	push   %esi
411b9f:	33 f6                	xor    %esi,%esi
411ba1:	eb 23                	jmp    0x411bc6
411ba3:	8a c1                	mov    %cl,%al
411ba5:	2c 61                	sub    $0x61,%al
411ba7:	42                   	inc    %edx
411ba8:	3c 05                	cmp    $0x5,%al