40b703:	e8 3b 36 00 00       	call   0x40ed43
40b708:	8d 7f 04             	lea    0x4(%edi),%edi
40b70b:	8b 07                	mov    (%edi),%eax
40b70d:	59                   	pop    %ecx
40b70e:	85 c0                	test   %eax,%eax
40b710:	75 f0                	jne    0x40b702
40b712:	56                   	push   %esi
40b713:	e8 2b 36 00 00       	call   0x40ed43
40b718:	59                   	pop    %ecx
40b719:	5f                   	pop    %edi
40b71a:	5e                   	pop    %esi
40b71b:	5d                   	pop    %ebp
40b71c:	c3                   	ret
40b71d:	8b ff                	mov    %edi,%edi
40b71f:	55                   	push   %ebp
40b720:	8b ec                	mov    %esp,%ebp
40b722:	56                   	push   %esi
40b723:	8b f1                	mov    %ecx,%esi
40b725:	57                   	push   %edi
40b726:	8d 7e 04             	lea    0x4(%esi),%edi
40b729:	eb 11                	jmp    0x40b73c
40b72b:	8b 4d 08             	mov    0x8(%ebp),%ecx
40b72e:	56                   	push   %esi
40b72f:	ff 15 50 c2 41 00    	call   *0x41c250
40b735:	ff 55 08             	call   *0x8(%ebp)
40b738:	59                   	pop    %ecx
40b739:	83 c6 04             	add    $0x4,%esi
40b73c:	3b f7                	cmp    %edi,%esi
40b73e:	75 eb                	jne    0x40b72b
40b740:	5f                   	pop    %edi
40b741:	5e                   	pop    %esi
40b742:	5d                   	pop    %ebp
40b743:	c2 04 00             	ret    $0x4
40b746:	cc                   	int3
40b747:	cc                   	int3
40b748:	cc                   	int3
40b749:	cc                   	int3
40b74a:	cc                   	int3
40b74b:	cc                   	int3
40b74c:	cc                   	int3
40b74d:	cc                   	int3
40b74e:	cc                   	int3
40b74f:	cc                   	int3
40b750:	8b ff                	mov    %edi,%edi
40b752:	55                   	push   %ebp
40b753:	8b ec                	mov    %esp,%ebp
40b755:	8b 45 08             	mov    0x8(%ebp),%eax
40b758:	8b 00                	mov    (%eax),%eax
40b75a:	3b 05 54 6e 42 00    	cmp    0x426e54,%eax
40b760:	74 07                	je     0x40b769
40b762:	50                   	push   %eax
40b763:	e8 86 ff ff ff       	call   0x40b6ee
40b768:	59                   	pop    %ecx
40b769:	5d                   	pop    %ebp
40b76a:	c3                   	ret
40b76b:	cc                   	int3
40b76c:	cc                   	int3
40b76d:	cc                   	int3
40b76e:	cc                   	int3
40b76f:	cc                   	int3
40b770:	8b ff                	mov    %edi,%edi
40b772:	55                   	push   %ebp
40b773:	8b ec                	mov    %esp,%ebp
40b775:	8b 45 08             	mov    0x8(%ebp),%eax
40b778:	8b 00                	mov    (%eax),%eax
40b77a:	3b 05 50 6e 42 00    	cmp    0x426e50,%eax
40b780:	74 07                	je     0x40b789
40b782:	50                   	push   %eax
40b783:	e8 66 ff ff ff       	call   0x40b6ee
40b788:	59                   	pop    %ecx
40b789:	5d                   	pop    %ebp
40b78a:	c3                   	ret
40b78b:	68 50 b7 40 00       	push   $0x40b750
40b790:	b9 48 6e 42 00       	mov    $0x426e48,%ecx
40b795:	e8 83 ff ff ff       	call   0x40b71d
40b79a:	68 70 b7 40 00       	push   $0x40b770
40b79f:	b9 4c 6e 42 00       	mov    $0x426e4c,%ecx
40b7a4:	e8 74 ff ff ff       	call   0x40b71d
40b7a9:	ff 35 54 6e 42 00    	push   0x426e54
40b7af:	e8 3a ff ff ff       	call   0x40b6ee
40b7b4:	ff 35 50 6e 42 00    	push   0x426e50
40b7ba:	e8 2f ff ff ff       	call   0x40b6ee
40b7bf:	59                   	pop    %ecx
40b7c0:	59                   	pop    %ecx
40b7c1:	c3                   	ret
40b7c2:	e9 04 fe ff ff       	jmp    0x40b5cb
40b7c7:	8b ff                	mov    %edi,%edi
40b7c9:	53                   	push   %ebx
40b7ca:	56                   	push   %esi
40b7cb:	e8 a0 44 00 00       	call   0x40fc70
40b7d0:	8b 35 b4 6e 42 00    	mov    0x426eb4,%esi
40b7d6:	85 f6                	test   %esi,%esi
40b7d8:	75 05                	jne    0x40b7df
40b7da:	be 58 6e 42 00       	mov    $0x426e58,%esi
40b7df:	32 db                	xor    %bl,%bl
40b7e1:	8a 06                	mov    (%esi),%al
40b7e3:	3c 20                	cmp    $0x20,%al
40b7e5:	77 08                	ja     0x40b7ef
40b7e7:	84 c0                	test   %al,%al
40b7e9:	74 2a                	je     0x40b815
40b7eb:	84 db                	test   %bl,%bl
40b7ed:	74 1b                	je     0x40b80a
40b7ef:	3c 22                	cmp    $0x22,%al
40b7f1:	75 05                	jne    0x40b7f8
40b7f3:	84 db                	test   %bl,%bl
40b7f5:	0f 94 c3             	sete   %bl
40b7f8:	0f b6 c0             	movzbl %al,%eax
40b7fb:	50                   	push   %eax
40b7fc:	e8 95 47 00 00       	call   0x40ff96
40b801:	59                   	pop    %ecx
40b802:	85 c0                	test   %eax,%eax
40b804:	74 01                	je     0x40b807
40b806:	46                   	inc    %esi
40b807:	46                   	inc    %esi
40b808:	eb d7                	jmp    0x40b7e1
40b80a:	3c 20                	cmp    $0x20,%al
40b80c:	77 07                	ja     0x40b815
40b80e:	46                   	inc    %esi
40b80f:	8a 06                	mov    (%esi),%al
40b811:	84 c0                	test   %al,%al
40b813:	75 f5                	jne    0x40b80a
40b815:	8b c6                	mov    %esi,%eax
40b817:	5e                   	pop    %esi
40b818:	5b                   	pop    %ebx
40b819:	c3                   	ret
40b81a:	8b ff                	mov    %edi,%edi
40b81c:	55                   	push   %ebp
40b81d:	8b ec                	mov    %esp,%ebp
40b81f:	51                   	push   %ecx
40b820:	8b 45 0c             	mov    0xc(%ebp),%eax
40b823:	53                   	push   %ebx
40b824:	56                   	push   %esi
40b825:	8b 75 08             	mov    0x8(%ebp),%esi
40b828:	2b c6                	sub    %esi,%eax
40b82a:	83 c0 03             	add    $0x3,%eax
40b82d:	57                   	push   %edi
40b82e:	33 ff                	xor    %edi,%edi
40b830:	c1 e8 02             	shr    $0x2,%eax
40b833:	39 75 0c             	cmp    %esi,0xc(%ebp)
40b836:	1b db                	sbb    %ebx,%ebx
40b838:	f7 d3                	not    %ebx
40b83a:	23 d8                	and    %eax,%ebx
40b83c:	74 1c                	je     0x40b85a
40b83e:	8b 06                	mov    (%esi),%eax
40b840:	89 45 fc             	mov    %eax,-0x4(%ebp)
40b843:	85 c0                	test   %eax,%eax
40b845:	74 0b                	je     0x40b852
40b847:	8b c8                	mov    %eax,%ecx
40b849:	ff 15 50 c2 41 00    	call   *0x41c250
40b84f:	ff 55 fc             	call   *-0x4(%ebp)
40b852:	83 c6 04             	add    $0x4,%esi
40b855:	47                   	inc    %edi
40b856:	3b fb                	cmp    %ebx,%edi
40b858:	75 e4                	jne    0x40b83e
40b85a:	5f                   	pop    %edi
40b85b:	5e                   	pop    %esi
40b85c:	5b                   	pop    %ebx
40b85d:	c9                   	leave
40b85e:	c3                   	ret
40b85f:	8b ff                	mov    %edi,%edi
40b861:	55                   	push   %ebp
40b862:	8b ec                	mov    %esp,%ebp
40b864:	56                   	push   %esi
40b865:	8b 75 08             	mov    0x8(%ebp),%esi
40b868:	57                   	push   %edi
40b869:	eb 17                	jmp    0x40b882
40b86b:	8b 3e                	mov    (%esi),%edi
40b86d:	85 ff                	test   %edi,%edi
40b86f:	74 0e                	je     0x40b87f
40b871:	8b cf                	mov    %edi,%ecx
40b873:	ff 15 50 c2 41 00    	call   *0x41c250
40b879:	ff d7                	call   *%edi
40b87b:	85 c0                	test   %eax,%eax
40b87d:	75 0a                	jne    0x40b889
40b87f:	83 c6 04             	add    $0x4,%esi
40b882:	3b 75 0c             	cmp    0xc(%ebp),%esi
40b885:	75 e4                	jne    0x40b86b
40b887:	33 c0                	xor    %eax,%eax
40b889:	5f                   	pop    %edi
40b88a:	5e                   	pop    %esi
40b88b:	5d                   	pop    %ebp
40b88c:	c3                   	ret
40b88d:	6a 08                	push   $0x8
40b88f:	68 60 3e 42 00       	push   $0x423e60
40b894:	e8 37 d1 ff ff       	call   0x4089d0
40b899:	8b 45 08             	mov    0x8(%ebp),%eax
40b89c:	ff 30                	push   (%eax)
40b89e:	e8 5e 49 00 00       	call   0x410201
40b8a3:	59                   	pop    %ecx
40b8a4:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
40b8a8:	8b 4d 0c             	mov    0xc(%ebp),%ecx
40b8ab:	e8 2a 00 00 00       	call   0x40b8da
40b8b0:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
40b8b7:	e8 12 00 00 00       	call   0x40b8ce
40b8bc:	8b 4d f0             	mov    -0x10(%ebp),%ecx
40b8bf:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
40b8c6:	59                   	pop    %ecx
40b8c7:	5f                   	pop    %edi
40b8c8:	5e                   	pop    %esi
40b8c9:	5b                   	pop    %ebx
40b8ca:	c9                   	leave
40b8cb:	c2 0c 00             	ret    $0xc
40b8ce:	8b 45 10             	mov    0x10(%ebp),%eax
40b8d1:	ff 30                	push   (%eax)
40b8d3:	e8 79 49 00 00       	call   0x410251
40b8d8:	59                   	pop    %ecx
40b8d9:	c3                   	ret
40b8da:	6a 08                	push   $0x8
40b8dc:	68 40 3e 42 00       	push   $0x423e40
40b8e1:	e8 ea d0 ff ff       	call   0x4089d0
40b8e6:	8b f1                	mov    %ecx,%esi
40b8e8:	80 3d 64 6e 42 00 00 	cmpb   $0x0,0x426e64
40b8ef:	0f 85 96 00 00 00    	jne    0x40b98b
40b8f5:	33 c0                	xor    %eax,%eax
40b8f7:	40                   	inc    %eax
40b8f8:	b9 5c 6e 42 00       	mov    $0x426e5c,%ecx
40b8fd:	87 01                	xchg   %eax,(%ecx)
40b8ff:	33 db                	xor    %ebx,%ebx
40b901:	89 5d fc             	mov    %ebx,-0x4(%ebp)
40b904:	8b 06                	mov    (%esi),%eax
40b906:	8b 00                	mov    (%eax),%eax
40b908:	85 c0                	test   %eax,%eax
40b90a:	75 2c                	jne    0x40b938
40b90c:	8b 3d 18 60 42 00    	mov    0x426018,%edi
40b912:	8b cf                	mov    %edi,%ecx
40b914:	83 e1 1f             	and    $0x1f,%ecx
40b917:	a1 60 6e 42 00       	mov    0x426e60,%eax
40b91c:	3b c7                	cmp    %edi,%eax
40b91e:	74 11                	je     0x40b931
40b920:	33 f8                	xor    %eax,%edi
40b922:	d3 cf                	ror    %cl,%edi
40b924:	53                   	push   %ebx
40b925:	53                   	push   %ebx
40b926:	53                   	push   %ebx
40b927:	8b cf                	mov    %edi,%ecx
40b929:	ff 15 50 c2 41 00    	call   *0x41c250
40b92f:	ff d7                	call   *%edi
40b931:	68 74 6e 42 00       	push   $0x426e74
40b936:	eb 0a                	jmp    0x40b942
40b938:	83 f8 01             	cmp    $0x1,%eax
40b93b:	75 0b                	jne    0x40b948
40b93d:	68 80 6e 42 00       	push   $0x426e80
40b942:	e8 ad 06 00 00       	call   0x40bff4
40b947:	59                   	pop    %ecx
40b948:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
40b94f:	8b 06                	mov    (%esi),%eax
40b951:	39 18                	cmp    %ebx,(%eax)
40b953:	75 11                	jne    0x40b966
40b955:	68 a4 c2 41 00       	push   $0x41c2a4
40b95a:	68 94 c2 41 00       	push   $0x41c294
40b95f:	e8 b6 fe ff ff       	call   0x40b81a
40b964:	59                   	pop    %ecx
40b965:	59                   	pop    %ecx
40b966:	68 ac c2 41 00       	push   $0x41c2ac
40b96b:	68 a8 c2 41 00       	push   $0x41c2a8
40b970:	e8 a5 fe ff ff       	call   0x40b81a
40b975:	59                   	pop    %ecx
40b976:	59                   	pop    %ecx
40b977:	8b 46 04             	mov    0x4(%esi),%eax
40b97a:	39 18                	cmp    %ebx,(%eax)
40b97c:	75 0d                	jne    0x40b98b
40b97e:	c6 05 64 6e 42 00 01 	movb   $0x1,0x426e64
40b985:	8b 46 08             	mov    0x8(%esi),%eax
40b988:	c6 00 01             	movb   $0x1,(%eax)
40b98b:	8b 4d f0             	mov    -0x10(%ebp),%ecx
40b98e:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
40b995:	59                   	pop    %ecx
40b996:	5f                   	pop    %edi
40b997:	5e                   	pop    %esi
40b998:	5b                   	pop    %ebx
40b999:	c9                   	leave
40b99a:	c3                   	ret
40b99b:	8b 45 ec             	mov    -0x14(%ebp),%eax
40b99e:	8b 00                	mov    (%eax),%eax
40b9a0:	ff 30                	push   (%eax)
40b9a2:	e8 0d 00 00 00       	call   0x40b9b4
40b9a7:	83 c4 04             	add    $0x4,%esp
40b9aa:	c3                   	ret
40b9ab:	8b 65 e8             	mov    -0x18(%ebp),%esp
40b9ae:	e8 8c 08 00 00       	call   0x40c23f
40b9b3:	cc                   	int3
40b9b4:	8b ff                	mov    %edi,%edi
40b9b6:	55                   	push   %ebp
40b9b7:	8b ec                	mov    %esp,%ebp
40b9b9:	33 c0                	xor    %eax,%eax
40b9bb:	81 7d 08 63 73 6d e0 	cmpl   $0xe06d7363,0x8(%ebp)
40b9c2:	0f 94 c0             	sete   %al
40b9c5:	5d                   	pop    %ebp
40b9c6:	c3                   	ret
40b9c7:	8b ff                	mov    %edi,%edi
40b9c9:	55                   	push   %ebp
40b9ca:	8b ec                	mov    %esp,%ebp
40b9cc:	83 ec 18             	sub    $0x18,%esp
40b9cf:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
40b9d3:	75 12                	jne    0x40b9e7
40b9d5:	e8 93 00 00 00       	call   0x40ba6d
40b9da:	84 c0                	test   %al,%al
40b9dc:	74 09                	je     0x40b9e7
40b9de:	ff 75 08             	push   0x8(%ebp)
40b9e1:	e8 ca 00 00 00       	call   0x40bab0
40b9e6:	59                   	pop    %ecx
40b9e7:	8d 45 0c             	lea    0xc(%ebp),%eax
40b9ea:	c6 45 ff 00          	movb   $0x0,-0x1(%ebp)
40b9ee:	89 45 e8             	mov    %eax,-0x18(%ebp)
40b9f1:	8d 4d fe             	lea    -0x2(%ebp),%ecx
40b9f4:	8d 45 10             	lea    0x10(%ebp),%eax
40b9f7:	89 45 ec             	mov    %eax,-0x14(%ebp)
40b9fa:	8d 45 ff             	lea    -0x1(%ebp),%eax
40b9fd:	6a 02                	push   $0x2
40b9ff:	89 45 f0             	mov    %eax,-0x10(%ebp)
40ba02:	58                   	pop    %eax
40ba03:	89 45 f8             	mov    %eax,-0x8(%ebp)
40ba06:	89 45 f4             	mov    %eax,-0xc(%ebp)
40ba09:	8d 45 f8             	lea    -0x8(%ebp),%eax
40ba0c:	50                   	push   %eax
40ba0d:	8d 45 e8             	lea    -0x18(%ebp),%eax
40ba10:	50                   	push   %eax
40ba11:	8d 45 f4             	lea    -0xc(%ebp),%eax
40ba14:	50                   	push   %eax
40ba15:	e8 73 fe ff ff       	call   0x40b88d
40ba1a:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
40ba1e:	74 02                	je     0x40ba22
40ba20:	c9                   	leave
40ba21:	c3                   	ret
40ba22:	ff 75 08             	push   0x8(%ebp)
40ba25:	e8 01 00 00 00       	call   0x40ba2b
40ba2a:	cc                   	int3
40ba2b:	8b ff                	mov    %edi,%edi
40ba2d:	55                   	push   %ebp
40ba2e:	8b ec                	mov    %esp,%ebp
40ba30:	e8 33 48 00 00       	call   0x410268
40ba35:	83 f8 01             	cmp    $0x1,%eax
40ba38:	74 20                	je     0x40ba5a
40ba3a:	64 a1 30 00 00 00    	mov    %fs:0x30,%eax
40ba40:	8b 40 68             	mov    0x68(%eax),%eax
40ba43:	c1 e8 08             	shr    $0x8,%eax
40ba46:	a8 01                	test   $0x1,%al
40ba48:	75 10                	jne    0x40ba5a
40ba4a:	ff 75 08             	push   0x8(%ebp)
40ba4d:	ff 15 54 c1 41 00    	call   *0x41c154
40ba53:	50                   	push   %eax
40ba54:	ff 15 50 c1 41 00    	call   *0x41c150
40ba5a:	ff 75 08             	push   0x8(%ebp)
40ba5d:	e8 4e 00 00 00       	call   0x40bab0
40ba62:	59                   	pop    %ecx
40ba63:	ff 75 08             	push   0x8(%ebp)
40ba66:	ff 15 88 c0 41 00    	call   *0x41c088
40ba6c:	cc                   	int3
40ba6d:	6a 00                	push   $0x0
40ba6f:	ff 15 58 c1 41 00    	call   *0x41c158