411936:	5f                   	pop    %edi
411937:	5e                   	pop    %esi
411938:	5b                   	pop    %ebx
411939:	5d                   	pop    %ebp
41193a:	c3                   	ret
41193b:	55                   	push   %ebp
41193c:	8b 6c 24 08          	mov    0x8(%esp),%ebp
411940:	52                   	push   %edx
411941:	51                   	push   %ecx
411942:	ff 74 24 14          	push   0x14(%esp)
411946:	e8 b5 fe ff ff       	call   0x411800
41194b:	83 c4 0c             	add    $0xc,%esp
41194e:	5d                   	pop    %ebp
41194f:	c2 08 00             	ret    $0x8
411952:	55                   	push   %ebp
411953:	8b ec                	mov    %esp,%ebp
411955:	56                   	push   %esi
411956:	57                   	push   %edi
411957:	8b 7d 08             	mov    0x8(%ebp),%edi
41195a:	85 ff                	test   %edi,%edi
41195c:	74 13                	je     0x411971
41195e:	8b 4d 0c             	mov    0xc(%ebp),%ecx
411961:	85 c9                	test   %ecx,%ecx
411963:	74 0c                	je     0x411971
411965:	8b 55 10             	mov    0x10(%ebp),%edx
411968:	85 d2                	test   %edx,%edx
41196a:	75 1a                	jne    0x411986
41196c:	33 c0                	xor    %eax,%eax
41196e:	66 89 07             	mov    %ax,(%edi)
411971:	e8 07 68 ff ff       	call   0x40817d
411976:	6a 16                	push   $0x16
411978:	5e                   	pop    %esi
411979:	89 30                	mov    %esi,(%eax)
41197b:	e8 75 9c ff ff       	call   0x40b5f5
411980:	8b c6                	mov    %esi,%eax
411982:	5f                   	pop    %edi
411983:	5e                   	pop    %esi
411984:	5d                   	pop    %ebp
411985:	c3                   	ret
411986:	8b f7                	mov    %edi,%esi
411988:	66 83 3e 00          	cmpw   $0x0,(%esi)
41198c:	74 06                	je     0x411994
41198e:	83 c6 02             	add    $0x2,%esi
411991:	49                   	dec    %ecx
411992:	75 f4                	jne    0x411988
411994:	85 c9                	test   %ecx,%ecx
411996:	74 d4                	je     0x41196c
411998:	2b f2                	sub    %edx,%esi
41199a:	0f b7 02             	movzwl (%edx),%eax
41199d:	66 89 04 16          	mov    %ax,(%esi,%edx,1)
4119a1:	8d 52 02             	lea    0x2(%edx),%edx
4119a4:	66 85 c0             	test   %ax,%ax
4119a7:	74 03                	je     0x4119ac
4119a9:	49                   	dec    %ecx
4119aa:	75 ee                	jne    0x41199a
4119ac:	33 c0                	xor    %eax,%eax
4119ae:	85 c9                	test   %ecx,%ecx
4119b0:	75 d0                	jne    0x411982
4119b2:	66 89 07             	mov    %ax,(%edi)
4119b5:	e8 c3 67 ff ff       	call   0x40817d
4119ba:	6a 22                	push   $0x22
4119bc:	eb ba                	jmp    0x411978
4119be:	55                   	push   %ebp
4119bf:	8b ec                	mov    %esp,%ebp
4119c1:	8b 55 14             	mov    0x14(%ebp),%edx
4119c4:	8b 4d 08             	mov    0x8(%ebp),%ecx
4119c7:	56                   	push   %esi
4119c8:	85 d2                	test   %edx,%edx
4119ca:	75 0d                	jne    0x4119d9
4119cc:	85 c9                	test   %ecx,%ecx
4119ce:	75 0d                	jne    0x4119dd
4119d0:	39 4d 0c             	cmp    %ecx,0xc(%ebp)
4119d3:	75 26                	jne    0x4119fb
4119d5:	33 c0                	xor    %eax,%eax
4119d7:	eb 33                	jmp    0x411a0c
4119d9:	85 c9                	test   %ecx,%ecx
4119db:	74 1e                	je     0x4119fb
4119dd:	8b 45 0c             	mov    0xc(%ebp),%eax
4119e0:	85 c0                	test   %eax,%eax
4119e2:	74 17                	je     0x4119fb
4119e4:	85 d2                	test   %edx,%edx
4119e6:	75 07                	jne    0x4119ef
4119e8:	33 c0                	xor    %eax,%eax
4119ea:	66 89 01             	mov    %ax,(%ecx)
4119ed:	eb e6                	jmp    0x4119d5
4119ef:	8b 75 10             	mov    0x10(%ebp),%esi
4119f2:	85 f6                	test   %esi,%esi
4119f4:	75 19                	jne    0x411a0f
4119f6:	33 c0                	xor    %eax,%eax
4119f8:	66 89 01             	mov    %ax,(%ecx)
4119fb:	e8 7d 67 ff ff       	call   0x40817d
411a00:	6a 16                	push   $0x16
411a02:	5e                   	pop    %esi
411a03:	89 30                	mov    %esi,(%eax)
411a05:	e8 eb 9b ff ff       	call   0x40b5f5
411a0a:	8b c6                	mov    %esi,%eax
411a0c:	5e                   	pop    %esi
411a0d:	5d                   	pop    %ebp
411a0e:	c3                   	ret
411a0f:	53                   	push   %ebx
411a10:	57                   	push   %edi
411a11:	8b d9                	mov    %ecx,%ebx
411a13:	8b f8                	mov    %eax,%edi
411a15:	83 fa ff             	cmp    $0xffffffff,%edx
411a18:	75 16                	jne    0x411a30
411a1a:	2b de                	sub    %esi,%ebx
411a1c:	0f b7 06             	movzwl (%esi),%eax
411a1f:	66 89 04 33          	mov    %ax,(%ebx,%esi,1)
411a23:	8d 76 02             	lea    0x2(%esi),%esi
411a26:	66 85 c0             	test   %ax,%ax
411a29:	74 25                	je     0x411a50
411a2b:	4f                   	dec    %edi
411a2c:	75 ee                	jne    0x411a1c
411a2e:	eb 20                	jmp    0x411a50
411a30:	2b f1                	sub    %ecx,%esi
411a32:	0f b7 04 1e          	movzwl (%esi,%ebx,1),%eax
411a36:	66 89 03             	mov    %ax,(%ebx)
411a39:	8d 5b 02             	lea    0x2(%ebx),%ebx
411a3c:	66 85 c0             	test   %ax,%ax
411a3f:	74 06                	je     0x411a47
411a41:	4f                   	dec    %edi
411a42:	74 03                	je     0x411a47
411a44:	4a                   	dec    %edx
411a45:	75 eb                	jne    0x411a32
411a47:	85 d2                	test   %edx,%edx
411a49:	75 05                	jne    0x411a50
411a4b:	33 c0                	xor    %eax,%eax
411a4d:	66 89 03             	mov    %ax,(%ebx)
411a50:	85 ff                	test   %edi,%edi
411a52:	5f                   	pop    %edi
411a53:	5b                   	pop    %ebx
411a54:	0f 85 7b ff ff ff    	jne    0x4119d5
411a5a:	83 fa ff             	cmp    $0xffffffff,%edx
411a5d:	75 0f                	jne    0x411a6e
411a5f:	8b 45 0c             	mov    0xc(%ebp),%eax
411a62:	33 d2                	xor    %edx,%edx
411a64:	6a 50                	push   $0x50
411a66:	66 89 54 41 fe       	mov    %dx,-0x2(%ecx,%eax,2)
411a6b:	58                   	pop    %eax
411a6c:	eb 9e                	jmp    0x411a0c
411a6e:	33 c0                	xor    %eax,%eax
411a70:	66 89 01             	mov    %ax,(%ecx)
411a73:	e8 05 67 ff ff       	call   0x40817d
411a78:	6a 22                	push   $0x22
411a7a:	eb 86                	jmp    0x411a02
411a7c:	55                   	push   %ebp
411a7d:	8b ec                	mov    %esp,%ebp
411a7f:	83 ec 24             	sub    $0x24,%esp
411a82:	a1 90 08 42 00       	mov    0x420890,%eax
411a87:	33 c5                	xor    %ebp,%eax
411a89:	89 45 fc             	mov    %eax,-0x4(%ebp)
411a8c:	8b 45 08             	mov    0x8(%ebp),%eax
411a8f:	53                   	push   %ebx
411a90:	8b 1d 58 90 41 00    	mov    0x419058,%ebx
411a96:	56                   	push   %esi
411a97:	57                   	push   %edi
411a98:	89 45 e4             	mov    %eax,-0x1c(%ebp)
411a9b:	8b 45 0c             	mov    0xc(%ebp),%eax
411a9e:	33 ff                	xor    %edi,%edi
411aa0:	57                   	push   %edi
411aa1:	89 45 e0             	mov    %eax,-0x20(%ebp)
411aa4:	ff d3                	call   *%ebx
411aa6:	8b f0                	mov    %eax,%esi
411aa8:	89 75 e8             	mov    %esi,-0x18(%ebp)
411aab:	e8 65 df ff ff       	call   0x40fa15
411ab0:	89 45 ec             	mov    %eax,-0x14(%ebp)
411ab3:	39 3d 70 29 42 00    	cmp    %edi,0x422970
411ab9:	0f 85 ae 00 00 00    	jne    0x411b6d
411abf:	68 00 08 00 00       	push   $0x800
411ac4:	57                   	push   %edi
411ac5:	68 c4 bd 41 00       	push   $0x41bdc4
411aca:	ff 15 00 90 41 00    	call   *0x419000
411ad0:	8b f0                	mov    %eax,%esi
411ad2:	85 f6                	test   %esi,%esi
411ad4:	75 24                	jne    0x411afa
411ad6:	ff 15 18 90 41 00    	call   *0x419018
411adc:	83 f8 57             	cmp    $0x57,%eax
411adf:	0f 85 68 01 00 00    	jne    0x411c4d
411ae5:	68 c4 bd 41 00       	push   $0x41bdc4
411aea:	ff 15 38 91 41 00    	call   *0x419138
411af0:	8b f0                	mov    %eax,%esi
411af2:	85 f6                	test   %esi,%esi
411af4:	0f 84 53 01 00 00    	je     0x411c4d
411afa:	68 dc bd 41 00       	push   $0x41bddc
411aff:	56                   	push   %esi
411b00:	ff 15 2c 90 41 00    	call   *0x41902c
411b06:	85 c0                	test   %eax,%eax
411b08:	0f 84 3f 01 00 00    	je     0x411c4d
411b0e:	50                   	push   %eax
411b0f:	ff d3                	call   *%ebx
411b11:	68 e8 bd 41 00       	push   $0x41bde8
411b16:	56                   	push   %esi
411b17:	a3 70 29 42 00       	mov    %eax,0x422970
411b1c:	ff 15 2c 90 41 00    	call   *0x41902c
411b22:	50                   	push   %eax
411b23:	ff d3                	call   *%ebx
411b25:	68 f8 bd 41 00       	push   $0x41bdf8
411b2a:	56                   	push   %esi
411b2b:	a3 74 29 42 00       	mov    %eax,0x422974
411b30:	ff 15 2c 90 41 00    	call   *0x41902c
411b36:	50                   	push   %eax
411b37:	ff d3                	call   *%ebx
411b39:	68 0c be 41 00       	push   $0x41be0c
411b3e:	56                   	push   %esi
411b3f:	a3 78 29 42 00       	mov    %eax,0x422978
411b44:	ff 15 2c 90 41 00    	call   *0x41902c
411b4a:	50                   	push   %eax
411b4b:	ff d3                	call   *%ebx
411b4d:	a3 80 29 42 00       	mov    %eax,0x422980
411b52:	85 c0                	test   %eax,%eax
411b54:	74 14                	je     0x411b6a
411b56:	68 28 be 41 00       	push   $0x41be28
411b5b:	56                   	push   %esi
411b5c:	ff 15 2c 90 41 00    	call   *0x41902c
411b62:	50                   	push   %eax
411b63:	ff d3                	call   *%ebx
411b65:	a3 7c 29 42 00       	mov    %eax,0x42297c
411b6a:	8b 75 e8             	mov    -0x18(%ebp),%esi
411b6d:	ff 15 9c 90 41 00    	call   *0x41909c
411b73:	85 c0                	test   %eax,%eax
411b75:	74 1b                	je     0x411b92
411b77:	8b 45 e4             	mov    -0x1c(%ebp),%eax
411b7a:	85 c0                	test   %eax,%eax
411b7c:	74 07                	je     0x411b85
411b7e:	50                   	push   %eax
411b7f:	ff 15 34 91 41 00    	call   *0x419134
411b85:	39 7d ec             	cmp    %edi,-0x14(%ebp)
411b88:	74 1d                	je     0x411ba7
411b8a:	6a 04                	push   $0x4
411b8c:	58                   	pop    %eax
411b8d:	e9 bd 00 00 00       	jmp    0x411c4f
411b92:	39 7d ec             	cmp    %edi,-0x14(%ebp)
411b95:	74 10                	je     0x411ba7
411b97:	ff 35 70 29 42 00    	push   0x422970
411b9d:	ff 15 5c 90 41 00    	call   *0x41905c
411ba3:	6a 03                	push   $0x3
411ba5:	eb e5                	jmp    0x411b8c
411ba7:	a1 7c 29 42 00       	mov    0x42297c,%eax
411bac:	8b 1d 5c 90 41 00    	mov    0x41905c,%ebx
411bb2:	3b c6                	cmp    %esi,%eax
411bb4:	74 4f                	je     0x411c05
411bb6:	39 35 80 29 42 00    	cmp    %esi,0x422980
411bbc:	74 47                	je     0x411c05
411bbe:	50                   	push   %eax
411bbf:	ff d3                	call   *%ebx
411bc1:	ff 35 80 29 42 00    	push   0x422980
411bc7:	89 45 ec             	mov    %eax,-0x14(%ebp)
411bca:	ff d3                	call   *%ebx
411bcc:	8b 4d ec             	mov    -0x14(%ebp),%ecx
411bcf:	89 45 e8             	mov    %eax,-0x18(%ebp)
411bd2:	85 c9                	test   %ecx,%ecx
411bd4:	74 2f                	je     0x411c05
411bd6:	85 c0                	test   %eax,%eax
411bd8:	74 2b                	je     0x411c05
411bda:	ff d1                	call   *%ecx
411bdc:	85 c0                	test   %eax,%eax
411bde:	74 1a                	je     0x411bfa
411be0:	8d 4d dc             	lea    -0x24(%ebp),%ecx
411be3:	51                   	push   %ecx
411be4:	6a 0c                	push   $0xc
411be6:	8d 4d f0             	lea    -0x10(%ebp),%ecx
411be9:	51                   	push   %ecx
411bea:	6a 01                	push   $0x1
411bec:	50                   	push   %eax
411bed:	ff 55 e8             	call   *-0x18(%ebp)
411bf0:	85 c0                	test   %eax,%eax
411bf2:	74 06                	je     0x411bfa
411bf4:	f6 45 f8 01          	testb  $0x1,-0x8(%ebp)
411bf8:	75 0b                	jne    0x411c05
411bfa:	8b 75 10             	mov    0x10(%ebp),%esi
411bfd:	81 ce 00 00 20 00    	or     $0x200000,%esi
411c03:	eb 30                	jmp    0x411c35
411c05:	a1 74 29 42 00       	mov    0x422974,%eax
411c0a:	3b c6                	cmp    %esi,%eax
411c0c:	74 24                	je     0x411c32
411c0e:	50                   	push   %eax
411c0f:	ff d3                	call   *%ebx
411c11:	85 c0                	test   %eax,%eax
411c13:	74 1d                	je     0x411c32
411c15:	ff d0                	call   *%eax
411c17:	8b f8                	mov    %eax,%edi
411c19:	85 ff                	test   %edi,%edi
411c1b:	74 15                	je     0x411c32
411c1d:	a1 78 29 42 00       	mov    0x422978,%eax
411c22:	3b c6                	cmp    %esi,%eax
411c24:	74 0c                	je     0x411c32
411c26:	50                   	push   %eax
411c27:	ff d3                	call   *%ebx
411c29:	85 c0                	test   %eax,%eax
411c2b:	74 05                	je     0x411c32
411c2d:	57                   	push   %edi
411c2e:	ff d0                	call   *%eax
411c30:	8b f8                	mov    %eax,%edi
411c32:	8b 75 10             	mov    0x10(%ebp),%esi
411c35:	ff 35 70 29 42 00    	push   0x422970
411c3b:	ff d3                	call   *%ebx
411c3d:	85 c0                	test   %eax,%eax
411c3f:	74 0c                	je     0x411c4d
411c41:	56                   	push   %esi
411c42:	ff 75 e0             	push   -0x20(%ebp)
411c45:	ff 75 e4             	push   -0x1c(%ebp)
411c48:	57                   	push   %edi
411c49:	ff d0                	call   *%eax
411c4b:	eb 02                	jmp    0x411c4f
411c4d:	33 c0                	xor    %eax,%eax
411c4f:	8b 4d fc             	mov    -0x4(%ebp),%ecx
411c52:	5f                   	pop    %edi
411c53:	5e                   	pop    %esi
411c54:	33 cd                	xor    %ebp,%ecx
411c56:	5b                   	pop    %ebx
411c57:	e8 dd 2a ff ff       	call   0x404739
411c5c:	c9                   	leave
411c5d:	c3                   	ret
411c5e:	55                   	push   %ebp
411c5f:	8b ec                	mov    %esp,%ebp
411c61:	8b 55 14             	mov    0x14(%ebp),%edx
411c64:	8b 4d 08             	mov    0x8(%ebp),%ecx
411c67:	56                   	push   %esi
411c68:	85 d2                	test   %edx,%edx
411c6a:	75 0d                	jne    0x411c79
411c6c:	85 c9                	test   %ecx,%ecx
411c6e:	75 0d                	jne    0x411c7d
411c70:	39 4d 0c             	cmp    %ecx,0xc(%ebp)
411c73:	75 21                	jne    0x411c96
411c75:	33 c0                	xor    %eax,%eax
411c77:	eb 2e                	jmp    0x411ca7
411c79:	85 c9                	test   %ecx,%ecx
411c7b:	74 19                	je     0x411c96
411c7d:	8b 45 0c             	mov    0xc(%ebp),%eax
411c80:	85 c0                	test   %eax,%eax
411c82:	74 12                	je     0x411c96
411c84:	85 d2                	test   %edx,%edx
411c86:	75 04                	jne    0x411c8c
411c88:	88 11                	mov    %dl,(%ecx)
411c8a:	eb e9                	jmp    0x411c75
411c8c:	8b 75 10             	mov    0x10(%ebp),%esi
411c8f:	85 f6                	test   %esi,%esi
411c91:	75 17                	jne    0x411caa
411c93:	c6 01 00             	movb   $0x0,(%ecx)
411c96:	e8 e2 64 ff ff       	call   0x40817d
411c9b:	6a 16                	push   $0x16
411c9d:	5e                   	pop    %esi
411c9e:	89 30                	mov    %esi,(%eax)
411ca0:	e8 50 99 ff ff       	call   0x40b5f5
411ca5:	8b c6                	mov    %esi,%eax
411ca7:	5e                   	pop    %esi
411ca8:	5d                   	pop    %ebp
411ca9:	c3                   	ret
411caa:	53                   	push   %ebx
411cab:	57                   	push   %edi