41585f:	8b e5                	mov    %ebp,%esp
415861:	5d                   	pop    %ebp
415862:	c3                   	ret
415863:	90                   	nop
415864:	55                   	push   %ebp
415865:	8b ec                	mov    %esp,%ebp
415867:	51                   	push   %ecx
415868:	56                   	push   %esi
415869:	8b f0                	mov    %eax,%esi
41586b:	68 ff ff 00 00       	push   $0xffff
415870:	8b ca                	mov    %edx,%ecx
415872:	a1 30 20 41 00       	mov    0x412030,%eax
415877:	b2 01                	mov    $0x1,%dl
415879:	e8 b2 0d 00 00       	call   0x416630
41587e:	89 45 fc             	mov    %eax,-0x4(%ebp)
415881:	33 c0                	xor    %eax,%eax
415883:	55                   	push   %ebp
415884:	68 af 58 41 00       	push   $0x4158af
415889:	64 ff 30             	push   %fs:(%eax)
41588c:	64 89 20             	mov    %esp,%fs:(%eax)
41588f:	8b 55 fc             	mov    -0x4(%ebp),%edx
415892:	8b c6                	mov    %esi,%eax
415894:	8b 08                	mov    (%eax),%ecx
415896:	ff 51 78             	call   *0x78(%ecx)
415899:	33 c0                	xor    %eax,%eax
41589b:	5a                   	pop    %edx
41589c:	59                   	pop    %ecx
41589d:	59                   	pop    %ecx
41589e:	64 89 10             	mov    %edx,%fs:(%eax)
4158a1:	68 b6 58 41 00       	push   $0x4158b6
4158a6:	8b 45 fc             	mov    -0x4(%ebp),%eax
4158a9:	e8 9a d9 fe ff       	call   0x403248
4158ae:	c3                   	ret
4158af:	e9 e8 e0 fe ff       	jmp    0x40399c
4158b4:	eb f0                	jmp    0x4158a6
4158b6:	5e                   	pop    %esi
4158b7:	59                   	pop    %ecx
4158b8:	5d                   	pop    %ebp
4158b9:	c3                   	ret
4158ba:	8b c0                	mov    %eax,%eax
4158bc:	55                   	push   %ebp
4158bd:	8b ec                	mov    %esp,%ebp
4158bf:	6a 00                	push   $0x0
4158c1:	53                   	push   %ebx
4158c2:	56                   	push   %esi
4158c3:	8b f2                	mov    %edx,%esi
4158c5:	8b d8                	mov    %eax,%ebx
4158c7:	33 c0                	xor    %eax,%eax
4158c9:	55                   	push   %ebp
4158ca:	68 09 59 41 00       	push   $0x415909
4158cf:	64 ff 30             	push   %fs:(%eax)
4158d2:	64 89 20             	mov    %esp,%fs:(%eax)
4158d5:	8d 55 fc             	lea    -0x4(%ebp),%edx
4158d8:	8b c3                	mov    %ebx,%eax
4158da:	8b 08                	mov    (%eax),%ecx
4158dc:	ff 51 1c             	call   *0x1c(%ecx)
4158df:	8b 45 fc             	mov    -0x4(%ebp),%eax
4158e2:	e8 71 e9 fe ff       	call   0x404258
4158e7:	8b c8                	mov    %eax,%ecx
4158e9:	8b 55 fc             	mov    -0x4(%ebp),%edx
4158ec:	8b c6                	mov    %esi,%eax
4158ee:	e8 ed 0a 00 00       	call   0x4163e0
4158f3:	33 c0                	xor    %eax,%eax
4158f5:	5a                   	pop    %edx
4158f6:	59                   	pop    %ecx
4158f7:	59                   	pop    %ecx
4158f8:	64 89 10             	mov    %edx,%fs:(%eax)
4158fb:	68 10 59 41 00       	push   $0x415910
415900:	8d 45 fc             	lea    -0x4(%ebp),%eax
415903:	e8 90 e6 fe ff       	call   0x403f98
415908:	c3                   	ret
415909:	e9 8e e0 fe ff       	jmp    0x40399c
41590e:	eb f0                	jmp    0x415900
415910:	5e                   	pop    %esi
415911:	5b                   	pop    %ebx
415912:	59                   	pop    %ecx
415913:	5d                   	pop    %ebp
415914:	c3                   	ret
415915:	8d 40 00             	lea    0x0(%eax),%eax
415918:	c3                   	ret
415919:	8d 40 00             	lea    0x0(%eax),%eax
41591c:	53                   	push   %ebx
41591d:	56                   	push   %esi
41591e:	8b f2                	mov    %edx,%esi
415920:	8b d8                	mov    %eax,%ebx
415922:	83 7b 0c 00          	cmpl   $0x0,0xc(%ebx)
415926:	74 08                	je     0x415930
415928:	8b 43 0c             	mov    0xc(%ebx),%eax
41592b:	8b 10                	mov    (%eax),%edx
41592d:	ff 52 10             	call   *0x10(%edx)
415930:	8d 43 0c             	lea    0xc(%ebx),%eax
415933:	8b d6                	mov    %esi,%edx
415935:	e8 16 fd fe ff       	call   0x405650
41593a:	83 7b 0c 00          	cmpl   $0x0,0xc(%ebx)
41593e:	74 0a                	je     0x41594a
415940:	8b d3                	mov    %ebx,%edx
415942:	8b 43 0c             	mov    0xc(%ebx),%eax
415945:	8b 08                	mov    (%eax),%ecx
415947:	ff 51 0c             	call   *0xc(%ecx)
41594a:	5e                   	pop    %esi
41594b:	5b                   	pop    %ebx
41594c:	c3                   	ret
41594d:	8d 40 00             	lea    0x0(%eax),%eax
415950:	55                   	push   %ebp
415951:	8b ec                	mov    %esp,%ebp
415953:	6a 00                	push   $0x0
415955:	53                   	push   %ebx
415956:	56                   	push   %esi
415957:	8b f2                	mov    %edx,%esi
415959:	8b d8                	mov    %eax,%ebx
41595b:	33 c0                	xor    %eax,%eax
41595d:	55                   	push   %ebp
41595e:	68 93 59 41 00       	push   $0x415993
415963:	64 ff 30             	push   %fs:(%eax)
415966:	64 89 20             	mov    %esp,%fs:(%eax)
415969:	8d 45 fc             	lea    -0x4(%ebp),%eax
41596c:	8b d6                	mov    %esi,%edx
41596e:	e8 1d e8 fe ff       	call   0x404190
415973:	8b 55 fc             	mov    -0x4(%ebp),%edx
415976:	8b c3                	mov    %ebx,%eax
415978:	8b 08                	mov    (%eax),%ecx
41597a:	ff 51 2c             	call   *0x2c(%ecx)
41597d:	33 c0                	xor    %eax,%eax
41597f:	5a                   	pop    %edx
415980:	59                   	pop    %ecx
415981:	59                   	pop    %ecx
415982:	64 89 10             	mov    %edx,%fs:(%eax)
415985:	68 9a 59 41 00       	push   $0x41599a
41598a:	8d 45 fc             	lea    -0x4(%ebp),%eax
41598d:	e8 06 e6 fe ff       	call   0x403f98
415992:	c3                   	ret
415993:	e9 04 e0 fe ff       	jmp    0x40399c
415998:	eb f0                	jmp    0x41598a
41599a:	5e                   	pop    %esi
41599b:	5b                   	pop    %ebx
41599c:	59                   	pop    %ecx
41599d:	5d                   	pop    %ebp
41599e:	c3                   	ret
41599f:	90                   	nop
4159a0:	55                   	push   %ebp
4159a1:	8b ec                	mov    %esp,%ebp
4159a3:	83 c4 f8             	add    $0xfffffff8,%esp
4159a6:	53                   	push   %ebx
4159a7:	33 c9                	xor    %ecx,%ecx
4159a9:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4159ac:	8b da                	mov    %edx,%ebx
4159ae:	89 45 fc             	mov    %eax,-0x4(%ebp)
4159b1:	33 c0                	xor    %eax,%eax
4159b3:	55                   	push   %ebp
4159b4:	68 54 5a 41 00       	push   $0x415a54
4159b9:	64 ff 30             	push   %fs:(%eax)
4159bc:	64 89 20             	mov    %esp,%fs:(%eax)
4159bf:	8b 45 fc             	mov    -0x4(%ebp),%eax
4159c2:	e8 c5 f5 ff ff       	call   0x414f8c
4159c7:	33 d2                	xor    %edx,%edx
4159c9:	55                   	push   %ebp
4159ca:	68 37 5a 41 00       	push   $0x415a37
4159cf:	64 ff 32             	push   %fs:(%edx)
4159d2:	64 89 22             	mov    %esp,%fs:(%edx)
4159d5:	8b 45 fc             	mov    -0x4(%ebp),%eax
4159d8:	8b 10                	mov    (%eax),%edx
4159da:	ff 52 44             	call   *0x44(%edx)
4159dd:	85 db                	test   %ebx,%ebx
4159df:	74 40                	je     0x415a21
4159e1:	eb 39                	jmp    0x415a1c
4159e3:	8b c3                	mov    %ebx,%eax
4159e5:	eb 01                	jmp    0x4159e8
4159e7:	43                   	inc    %ebx
4159e8:	8a 13                	mov    (%ebx),%dl
4159ea:	84 d2                	test   %dl,%dl
4159ec:	74 0a                	je     0x4159f8
4159ee:	80 ea 0a             	sub    $0xa,%dl
4159f1:	74 05                	je     0x4159f8
4159f3:	80 ea 03             	sub    $0x3,%dl
4159f6:	75 ef                	jne    0x4159e7
4159f8:	8b cb                	mov    %ebx,%ecx
4159fa:	2b c8                	sub    %eax,%ecx
4159fc:	8d 55 f8             	lea    -0x8(%ebp),%edx
4159ff:	92                   	xchg   %eax,%edx
415a00:	e8 83 e6 fe ff       	call   0x404088
415a05:	8b 55 f8             	mov    -0x8(%ebp),%edx
415a08:	8b 45 fc             	mov    -0x4(%ebp),%eax
415a0b:	8b 08                	mov    (%eax),%ecx
415a0d:	ff 51 38             	call   *0x38(%ecx)
415a10:	80 3b 0d             	cmpb   $0xd,(%ebx)
415a13:	75 01                	jne    0x415a16
415a15:	43                   	inc    %ebx
415a16:	80 3b 0a             	cmpb   $0xa,(%ebx)
415a19:	75 01                	jne    0x415a1c
415a1b:	43                   	inc    %ebx
415a1c:	80 3b 00             	cmpb   $0x0,(%ebx)
415a1f:	75 c2                	jne    0x4159e3
415a21:	33 c0                	xor    %eax,%eax
415a23:	5a                   	pop    %edx
415a24:	59                   	pop    %ecx
415a25:	59                   	pop    %ecx
415a26:	64 89 10             	mov    %edx,%fs:(%eax)
415a29:	68 3e 5a 41 00       	push   $0x415a3e
415a2e:	8b 45 fc             	mov    -0x4(%ebp),%eax
415a31:	e8 12 f6 ff ff       	call   0x415048
415a36:	c3                   	ret
415a37:	e9 60 df fe ff       	jmp    0x40399c
415a3c:	eb f0                	jmp    0x415a2e
415a3e:	33 c0                	xor    %eax,%eax
415a40:	5a                   	pop    %edx
415a41:	59                   	pop    %ecx
415a42:	59                   	pop    %ecx
415a43:	64 89 10             	mov    %edx,%fs:(%eax)
415a46:	68 5b 5a 41 00       	push   $0x415a5b
415a4b:	8d 45 f8             	lea    -0x8(%ebp),%eax
415a4e:	e8 45 e5 fe ff       	call   0x403f98
415a53:	c3                   	ret
415a54:	e9 43 df fe ff       	jmp    0x40399c
415a59:	eb f0                	jmp    0x415a4b
415a5b:	5b                   	pop    %ebx
415a5c:	59                   	pop    %ecx
415a5d:	59                   	pop    %ecx
415a5e:	5d                   	pop    %ebp
415a5f:	c3                   	ret
415a60:	c3                   	ret
415a61:	8d 40 00             	lea    0x0(%eax),%eax
415a64:	55                   	push   %ebp
415a65:	8b ec                	mov    %esp,%ebp
415a67:	83 c4 f4             	add    $0xfffffff4,%esp
415a6a:	53                   	push   %ebx
415a6b:	56                   	push   %esi
415a6c:	57                   	push   %edi
415a6d:	33 c9                	xor    %ecx,%ecx
415a6f:	89 4d f4             	mov    %ecx,-0xc(%ebp)
415a72:	89 55 f8             	mov    %edx,-0x8(%ebp)
415a75:	89 45 fc             	mov    %eax,-0x4(%ebp)
415a78:	33 c0                	xor    %eax,%eax
415a7a:	55                   	push   %ebp
415a7b:	68 da 5a 41 00       	push   $0x415ada
415a80:	64 ff 30             	push   %fs:(%eax)
415a83:	64 89 20             	mov    %esp,%fs:(%eax)
415a86:	8b 45 f8             	mov    -0x8(%ebp),%eax
415a89:	e8 2a 41 00 00       	call   0x419bb8
415a8e:	8b 45 fc             	mov    -0x4(%ebp),%eax
415a91:	8b 10                	mov    (%eax),%edx
415a93:	ff 52 14             	call   *0x14(%edx)
415a96:	8b d8                	mov    %eax,%ebx
415a98:	4b                   	dec    %ebx
415a99:	85 db                	test   %ebx,%ebx
415a9b:	7c 1f                	jl     0x415abc
415a9d:	43                   	inc    %ebx
415a9e:	33 f6                	xor    %esi,%esi
415aa0:	8d 4d f4             	lea    -0xc(%ebp),%ecx
415aa3:	8b d6                	mov    %esi,%edx
415aa5:	8b 45 fc             	mov    -0x4(%ebp),%eax
415aa8:	8b 38                	mov    (%eax),%edi
415aaa:	ff 57 0c             	call   *0xc(%edi)
415aad:	8b 55 f4             	mov    -0xc(%ebp),%edx
415ab0:	8b 45 f8             	mov    -0x8(%ebp),%eax
415ab3:	e8 a8 41 00 00       	call   0x419c60
415ab8:	46                   	inc    %esi
415ab9:	4b                   	dec    %ebx
415aba:	75 e4                	jne    0x415aa0
415abc:	8b 45 f8             	mov    -0x8(%ebp),%eax
415abf:	e8 fc 40 00 00       	call   0x419bc0
415ac4:	33 c0                	xor    %eax,%eax
415ac6:	5a                   	pop    %edx
415ac7:	59                   	pop    %ecx
415ac8:	59                   	pop    %ecx
415ac9:	64 89 10             	mov    %edx,%fs:(%eax)
415acc:	68 e1 5a 41 00       	push   $0x415ae1
415ad1:	8d 45 f4             	lea    -0xc(%ebp),%eax
415ad4:	e8 bf e4 fe ff       	call   0x403f98
415ad9:	c3                   	ret
415ada:	e9 bd de fe ff       	jmp    0x40399c
415adf:	eb f0                	jmp    0x415ad1
415ae1:	5f                   	pop    %edi
415ae2:	5e                   	pop    %esi
415ae3:	5b                   	pop    %ebx
415ae4:	8b e5                	mov    %ebp,%esp
415ae6:	5d                   	pop    %ebp
415ae7:	c3                   	ret
415ae8:	8b c2                	mov    %edx,%eax
415aea:	8b d1                	mov    %ecx,%edx
415aec:	e8 1f 22 ff ff       	call   0x407d10
415af1:	c3                   	ret
415af2:	8b c0                	mov    %eax,%eax
415af4:	53                   	push   %ebx
415af5:	8b d8                	mov    %eax,%ebx
415af7:	f6 43 04 04          	testb  $0x4,0x4(%ebx)
415afb:	75 09                	jne    0x415b06
415afd:	b2 3d                	mov    $0x3d,%dl
415aff:	8b c3                	mov    %ebx,%eax
415b01:	e8 06 00 00 00       	call   0x415b0c
415b06:	8a 43 07             	mov    0x7(%ebx),%al
415b09:	5b                   	pop    %ebx
415b0a:	c3                   	ret
415b0b:	90                   	nop
415b0c:	53                   	push   %ebx
415b0d:	56                   	push   %esi
415b0e:	8b da                	mov    %edx,%ebx
415b10:	8b f0                	mov    %eax,%esi
415b12:	3a 5e 07             	cmp    0x7(%esi),%bl
415b15:	75 06                	jne    0x415b1d
415b17:	f6 46 04 04          	testb  $0x4,0x4(%esi)
415b1b:	75 07                	jne    0x415b24
415b1d:	80 4e 04 04          	orb    $0x4,0x4(%esi)
415b21:	88 5e 07             	mov    %bl,0x7(%esi)
415b24:	5e                   	pop    %esi
415b25:	5b                   	pop    %ebx
415b26:	c3                   	ret
415b27:	90                   	nop
415b28:	53                   	push   %ebx
415b29:	56                   	push   %esi
415b2a:	e8 a5 da fe ff       	call   0x4035d4
415b2f:	8b da                	mov    %edx,%ebx
415b31:	8b f0                	mov    %eax,%esi
415b33:	33 c0                	xor    %eax,%eax
415b35:	89 46 20             	mov    %eax,0x20(%esi)
415b38:	89 46 24             	mov    %eax,0x24(%esi)
415b3b:	33 c0                	xor    %eax,%eax
415b3d:	89 46 28             	mov    %eax,0x28(%esi)
415b40:	89 46 2c             	mov    %eax,0x2c(%esi)
415b43:	8b d3                	mov    %ebx,%edx
415b45:	80 e2 fc             	and    $0xfc,%dl
415b48:	8b c6                	mov    %esi,%eax
415b4a:	e8 75 f2 ff ff       	call   0x414dc4
415b4f:	8b 46 14             	mov    0x14(%esi),%eax
415b52:	85 c0                	test   %eax,%eax
415b54:	74 10                	je     0x415b66
415b56:	8b c8                	mov    %eax,%ecx
415b58:	8b 46 10             	mov    0x10(%esi),%eax
415b5b:	8b 15 0c 1e 41 00    	mov    0x411e0c,%edx
415b61:	e8 ba ee fe ff       	call   0x404a20
415b66:	33 c0                	xor    %eax,%eax
415b68:	89 46 14             	mov    %eax,0x14(%esi)
415b6b:	33 d2                	xor    %edx,%edx
415b6d:	8b c6                	mov    %esi,%eax
415b6f:	8b 08                	mov    (%eax),%ecx
415b71:	ff 51 28             	call   *0x28(%ecx)
415b74:	84 db                	test   %bl,%bl
415b76:	7e 07                	jle    0x415b7f
415b78:	8b c6                	mov    %esi,%eax
415b7a:	e8 3d da fe ff       	call   0x4035bc
415b7f:	5e                   	pop    %esi
415b80:	5b                   	pop    %ebx
415b81:	c3                   	ret
415b82:	8b c0                	mov    %eax,%eax
415b84:	53                   	push   %ebx
415b85:	33 c9                	xor    %ecx,%ecx
415b87:	8b 18                	mov    (%eax),%ebx
415b89:	ff 53 3c             	call   *0x3c(%ebx)
415b8c:	5b                   	pop    %ebx
415b8d:	c3                   	ret
415b8e:	8b c0                	mov    %eax,%eax