59783b:	8b 46 08             	mov    0x8(%esi),%eax
59783e:	83 f8 40             	cmp    $0x40,%eax
597841:	0f 84 54 01 00 00    	je     0x59799b
597847:	3d a3 02 00 00       	cmp    $0x2a3,%eax
59784c:	0f 84 49 01 00 00    	je     0x59799b
597852:	8b 4e 10             	mov    0x10(%esi),%ecx
597855:	83 f9 74             	cmp    $0x74,%ecx
597858:	0f 84 3d 01 00 00    	je     0x59799b
59785e:	83 f9 06             	cmp    $0x6,%ecx
597861:	0f 84 34 01 00 00    	je     0x59799b
597867:	85 c0                	test   %eax,%eax
597869:	74 13                	je     0x59787e
59786b:	ff 76 0c             	push   0xc(%esi)
59786e:	e8 ed 0d ff ff       	call   0x588660
597873:	83 c4 04             	add    $0x4,%esp
597876:	85 c0                	test   %eax,%eax
597878:	0f 84 1d 01 00 00    	je     0x59799b
59787e:	85 ed                	test   %ebp,%ebp
597880:	75 53                	jne    0x5978d5
597882:	8b 46 14             	mov    0x14(%esi),%eax
597885:	83 f8 08             	cmp    $0x8,%eax
597888:	0f 87 0d 01 00 00    	ja     0x59799b
59788e:	8d 0c 80             	lea    (%eax,%eax,4),%ecx
597891:	8b 83 04 04 00 00    	mov    0x404(%ebx),%eax
597897:	8b 54 88 14          	mov    0x14(%eax,%ecx,4),%edx
59789b:	85 d2                	test   %edx,%edx
59789d:	0f 84 f8 00 00 00    	je     0x59799b
5978a3:	8b 44 88 18          	mov    0x18(%eax,%ecx,4),%eax
5978a7:	85 c0                	test   %eax,%eax
5978a9:	0f 84 ec 00 00 00    	je     0x59799b
5978af:	50                   	push   %eax
5978b0:	52                   	push   %edx
5978b1:	56                   	push   %esi
5978b2:	53                   	push   %ebx
5978b3:	e8 68 fe ff ff       	call   0x597720
5978b8:	83 c4 10             	add    $0x10,%esp
5978bb:	85 c0                	test   %eax,%eax
5978bd:	0f 84 d8 00 00 00    	je     0x59799b
5978c3:	8b 46 14             	mov    0x14(%esi),%eax
5978c6:	8d 0c 80             	lea    (%eax,%eax,4),%ecx
5978c9:	8b 83 04 04 00 00    	mov    0x404(%ebx),%eax
5978cf:	8b 44 88 18          	mov    0x18(%eax,%ecx,4),%eax
5978d3:	eb 3c                	jmp    0x597911
5978d5:	8d 44 24 1c          	lea    0x1c(%esp),%eax
5978d9:	50                   	push   %eax
5978da:	55                   	push   %ebp
5978db:	e8 00 3a ff ff       	call   0x58b2e0
5978e0:	83 c4 08             	add    $0x8,%esp
5978e3:	85 c0                	test   %eax,%eax
5978e5:	0f 84 b0 00 00 00    	je     0x59799b
5978eb:	8b 44 24 1c          	mov    0x1c(%esp),%eax
5978ef:	3b 46 14             	cmp    0x14(%esi),%eax
5978f2:	0f 85 a3 00 00 00    	jne    0x59799b
5978f8:	55                   	push   %ebp
5978f9:	ff 74 24 24          	push   0x24(%esp)
5978fd:	56                   	push   %esi
5978fe:	53                   	push   %ebx
5978ff:	e8 1c fe ff ff       	call   0x597720
597904:	83 c4 10             	add    $0x10,%esp
597907:	85 c0                	test   %eax,%eax
597909:	0f 84 8c 00 00 00    	je     0x59799b
59790f:	8b c5                	mov    %ebp,%eax
597911:	8b 4e 10             	mov    0x10(%esi),%ecx
597914:	81 f9 98 01 00 00    	cmp    $0x198,%ecx
59791a:	75 31                	jne    0x59794d
59791c:	8b 4c 24 14          	mov    0x14(%esp),%ecx
597920:	83 f9 ff             	cmp    $0xffffffff,%ecx
597923:	75 1b                	jne    0x597940
597925:	50                   	push   %eax
597926:	e8 a5 94 f5 ff       	call   0x4f0dd0
59792b:	50                   	push   %eax
59792c:	e8 0f f9 f4 ff       	call   0x4e7240
597931:	50                   	push   %eax
597932:	e8 79 89 f5 ff       	call   0x4f02b0
597937:	8b c8                	mov    %eax,%ecx
597939:	83 c4 0c             	add    $0xc,%esp
59793c:	89 4c 24 14          	mov    %ecx,0x14(%esp)
597940:	8b 46 1c             	mov    0x1c(%esi),%eax
597943:	85 c0                	test   %eax,%eax
597945:	74 65                	je     0x5979ac
597947:	3b c8                	cmp    %eax,%ecx
597949:	74 61                	je     0x5979ac
59794b:	eb 4e                	jmp    0x59799b
59794d:	81 f9 90 03 00 00    	cmp    $0x390,%ecx
597953:	75 57                	jne    0x5979ac
597955:	50                   	push   %eax
597956:	e8 25 94 f5 ff       	call   0x4f0d80
59795b:	8b e8                	mov    %eax,%ebp
59795d:	83 c4 04             	add    $0x4,%esp
597960:	85 ed                	test   %ebp,%ebp
597962:	74 33                	je     0x597997
597964:	83 7e 08 00          	cmpl   $0x0,0x8(%esi)
597968:	74 2d                	je     0x597997
59796a:	ff 76 0c             	push   0xc(%esi)
59796d:	e8 ee 0c ff ff       	call   0x588660
597972:	83 c4 04             	add    $0x4,%esp
597975:	85 c0                	test   %eax,%eax
597977:	74 1e                	je     0x597997
597979:	50                   	push   %eax
59797a:	e8 41 8f f5 ff       	call   0x4f08c0
59797f:	55                   	push   %ebp
597980:	8d 3c 45 02 00 00 00 	lea    0x2(,%eax,2),%edi
597987:	e8 44 32 f4 ff       	call   0x4dabd0
59798c:	83 c4 08             	add    $0x8,%esp
59798f:	3b c7                	cmp    %edi,%eax
597991:	8b 7c 24 10          	mov    0x10(%esp),%edi
597995:	7d 15                	jge    0x5979ac
597997:	8b 6c 24 24          	mov    0x24(%esp),%ebp
59799b:	47                   	inc    %edi
59799c:	89 7c 24 10          	mov    %edi,0x10(%esp)
5979a0:	3b bb 8c 0f 00 00    	cmp    0xf8c(%ebx),%edi
5979a6:	0f 82 86 fe ff ff    	jb     0x597832
5979ac:	5d                   	pop    %ebp
5979ad:	33 c0                	xor    %eax,%eax
5979af:	3b bb 8c 0f 00 00    	cmp    0xf8c(%ebx),%edi
5979b5:	5f                   	pop    %edi
5979b6:	0f 44 f0             	cmove  %eax,%esi
5979b9:	8b c6                	mov    %esi,%eax
5979bb:	5e                   	pop    %esi
5979bc:	5b                   	pop    %ebx
5979bd:	83 c4 08             	add    $0x8,%esp
5979c0:	c3                   	ret
5979c1:	cc                   	int3
5979c2:	cc                   	int3
5979c3:	cc                   	int3
5979c4:	cc                   	int3
5979c5:	cc                   	int3
5979c6:	cc                   	int3
5979c7:	cc                   	int3
5979c8:	cc                   	int3
5979c9:	cc                   	int3
5979ca:	cc                   	int3
5979cb:	cc                   	int3
5979cc:	cc                   	int3
5979cd:	cc                   	int3
5979ce:	cc                   	int3
5979cf:	cc                   	int3
5979d0:	57                   	push   %edi
5979d1:	8b 7c 24 10          	mov    0x10(%esp),%edi
5979d5:	b9 34 1f 62 00       	mov    $0x621f34,%ecx
5979da:	8b c7                	mov    %edi,%eax
5979dc:	0f 1f 40 00          	nopl   0x0(%eax)
5979e0:	8a 10                	mov    (%eax),%dl
5979e2:	3a 11                	cmp    (%ecx),%dl
5979e4:	75 1a                	jne    0x597a00
5979e6:	84 d2                	test   %dl,%dl
5979e8:	74 12                	je     0x5979fc
5979ea:	8a 50 01             	mov    0x1(%eax),%dl
5979ed:	3a 51 01             	cmp    0x1(%ecx),%dl
5979f0:	75 0e                	jne    0x597a00
5979f2:	83 c0 02             	add    $0x2,%eax
5979f5:	83 c1 02             	add    $0x2,%ecx
5979f8:	84 d2                	test   %dl,%dl
5979fa:	75 e4                	jne    0x5979e0
5979fc:	33 c0                	xor    %eax,%eax
5979fe:	eb 05                	jmp    0x597a05
597a00:	1b c0                	sbb    %eax,%eax
597a02:	83 c8 01             	or     $0x1,%eax
597a05:	85 c0                	test   %eax,%eax
597a07:	75 0c                	jne    0x597a15
597a09:	8b 44 24 08          	mov    0x8(%esp),%eax
597a0d:	5f                   	pop    %edi
597a0e:	c7 00 06 00 00 00    	movl   $0x6,(%eax)
597a14:	c3                   	ret
597a15:	b9 38 93 64 00       	mov    $0x649338,%ecx
597a1a:	8b c7                	mov    %edi,%eax
597a1c:	0f 1f 40 00          	nopl   0x0(%eax)
597a20:	8a 10                	mov    (%eax),%dl
597a22:	3a 11                	cmp    (%ecx),%dl
597a24:	75 1a                	jne    0x597a40
597a26:	84 d2                	test   %dl,%dl
597a28:	74 12                	je     0x597a3c
597a2a:	8a 50 01             	mov    0x1(%eax),%dl
597a2d:	3a 51 01             	cmp    0x1(%ecx),%dl
597a30:	75 0e                	jne    0x597a40
597a32:	83 c0 02             	add    $0x2,%eax
597a35:	83 c1 02             	add    $0x2,%ecx
597a38:	84 d2                	test   %dl,%dl
597a3a:	75 e4                	jne    0x597a20
597a3c:	33 c0                	xor    %eax,%eax
597a3e:	eb 05                	jmp    0x597a45
597a40:	1b c0                	sbb    %eax,%eax
597a42:	83 c8 01             	or     $0x1,%eax
597a45:	85 c0                	test   %eax,%eax
597a47:	0f 84 ce 00 00 00    	je     0x597b1b
597a4d:	b9 40 7b 66 00       	mov    $0x667b40,%ecx
597a52:	8b c7                	mov    %edi,%eax
597a54:	8a 10                	mov    (%eax),%dl
597a56:	3a 11                	cmp    (%ecx),%dl
597a58:	75 1a                	jne    0x597a74
597a5a:	84 d2                	test   %dl,%dl
597a5c:	74 12                	je     0x597a70
597a5e:	8a 50 01             	mov    0x1(%eax),%dl
597a61:	3a 51 01             	cmp    0x1(%ecx),%dl
597a64:	75 0e                	jne    0x597a74
597a66:	83 c0 02             	add    $0x2,%eax
597a69:	83 c1 02             	add    $0x2,%ecx
597a6c:	84 d2                	test   %dl,%dl
597a6e:	75 e4                	jne    0x597a54
597a70:	33 c0                	xor    %eax,%eax
597a72:	eb 05                	jmp    0x597a79
597a74:	1b c0                	sbb    %eax,%eax
597a76:	83 c8 01             	or     $0x1,%eax
597a79:	85 c0                	test   %eax,%eax
597a7b:	0f 84 9a 00 00 00    	je     0x597b1b
597a81:	b9 bc 28 62 00       	mov    $0x6228bc,%ecx
597a86:	8b c7                	mov    %edi,%eax
597a88:	8a 10                	mov    (%eax),%dl
597a8a:	3a 11                	cmp    (%ecx),%dl
597a8c:	75 1a                	jne    0x597aa8
597a8e:	84 d2                	test   %dl,%dl
597a90:	74 12                	je     0x597aa4
597a92:	8a 50 01             	mov    0x1(%eax),%dl
597a95:	3a 51 01             	cmp    0x1(%ecx),%dl
597a98:	75 0e                	jne    0x597aa8
597a9a:	83 c0 02             	add    $0x2,%eax
597a9d:	83 c1 02             	add    $0x2,%ecx
597aa0:	84 d2                	test   %dl,%dl
597aa2:	75 e4                	jne    0x597a88
597aa4:	33 c0                	xor    %eax,%eax
597aa6:	eb 05                	jmp    0x597aad
597aa8:	1b c0                	sbb    %eax,%eax
597aaa:	83 c8 01             	or     $0x1,%eax
597aad:	85 c0                	test   %eax,%eax
597aaf:	75 0c                	jne    0x597abd
597ab1:	8b 44 24 08          	mov    0x8(%esp),%eax
597ab5:	5f                   	pop    %edi
597ab6:	c7 00 74 00 00 00    	movl   $0x74,(%eax)
597abc:	c3                   	ret
597abd:	b9 2c 45 66 00       	mov    $0x66452c,%ecx
597ac2:	8b c7                	mov    %edi,%eax
597ac4:	8a 10                	mov    (%eax),%dl
597ac6:	3a 11                	cmp    (%ecx),%dl
597ac8:	75 1a                	jne    0x597ae4
597aca:	84 d2                	test   %dl,%dl
597acc:	74 12                	je     0x597ae0
597ace:	8a 50 01             	mov    0x1(%eax),%dl
597ad1:	3a 51 01             	cmp    0x1(%ecx),%dl
597ad4:	75 0e                	jne    0x597ae4
597ad6:	83 c0 02             	add    $0x2,%eax
597ad9:	83 c1 02             	add    $0x2,%ecx
597adc:	84 d2                	test   %dl,%dl
597ade:	75 e4                	jne    0x597ac4
597ae0:	33 c0                	xor    %eax,%eax
597ae2:	eb 05                	jmp    0x597ae9
597ae4:	1b c0                	sbb    %eax,%eax
597ae6:	83 c8 01             	or     $0x1,%eax
597ae9:	85 c0                	test   %eax,%eax
597aeb:	75 0c                	jne    0x597af9
597aed:	8b 44 24 08          	mov    0x8(%esp),%eax
597af1:	5f                   	pop    %edi
597af2:	c7 00 98 01 00 00    	movl   $0x198,(%eax)
597af8:	c3                   	ret
597af9:	56                   	push   %esi
597afa:	57                   	push   %edi
597afb:	e8 70 80 f5 ff       	call   0x4efb70
597b00:	8b 74 24 14          	mov    0x14(%esp),%esi
597b04:	83 c4 04             	add    $0x4,%esp
597b07:	89 06                	mov    %eax,(%esi)
597b09:	85 c0                	test   %eax,%eax
597b0b:	75 0b                	jne    0x597b18
597b0d:	57                   	push   %edi
597b0e:	e8 2d 78 f5 ff       	call   0x4ef340
597b13:	83 c4 04             	add    $0x4,%esp
597b16:	89 06                	mov    %eax,(%esi)
597b18:	5e                   	pop    %esi
597b19:	5f                   	pop    %edi
597b1a:	c3                   	ret
597b1b:	8b 44 24 08          	mov    0x8(%esp),%eax
597b1f:	5f                   	pop    %edi
597b20:	c7 00 90 03 00 00    	movl   $0x390,(%eax)
597b26:	c3                   	ret
597b27:	cc                   	int3
597b28:	cc                   	int3
597b29:	cc                   	int3
597b2a:	cc                   	int3
597b2b:	cc                   	int3
597b2c:	cc                   	int3
597b2d:	cc                   	int3
597b2e:	cc                   	int3
597b2f:	cc                   	int3
597b30:	b8 18 00 00 00       	mov    $0x18,%eax
597b35:	e8 76 9c 03 00       	call   0x5d17b0
597b3a:	a1 c0 14 69 00       	mov    0x6914c0,%eax
597b3f:	33 c4                	xor    %esp,%eax
597b41:	89 44 24 14          	mov    %eax,0x14(%esp)
597b45:	8b 44 24 1c          	mov    0x1c(%esp),%eax
597b49:	56                   	push   %esi
597b4a:	8b 74 24 28          	mov    0x28(%esp),%esi
597b4e:	57                   	push   %edi
597b4f:	85 c0                	test   %eax,%eax
597b51:	0f 84 a1 00 00 00    	je     0x597bf8
597b57:	83 3e 1e             	cmpl   $0x1e,(%esi)
597b5a:	0f 84 98 00 00 00    	je     0x597bf8
597b60:	8b 7c 24 28          	mov    0x28(%esp),%edi
597b64:	83 ff 13             	cmp    $0x13,%edi
597b67:	0f 8f 8b 00 00 00    	jg     0x597bf8
597b6d:	57                   	push   %edi
597b6e:	50                   	push   %eax
597b6f:	8d 44 24 10          	lea    0x10(%esp),%eax
597b73:	50                   	push   %eax
597b74:	e8 57 b2 03 00       	call   0x5d2dd0
597b79:	83 c4 0c             	add    $0xc,%esp
597b7c:	83 ff 14             	cmp    $0x14,%edi
597b7f:	0f 83 86 00 00 00    	jae    0x597c0b
597b85:	8d 44 24 08          	lea    0x8(%esp),%eax
597b89:	c6 44 3c 08 00       	movb   $0x0,0x8(%esp,%edi,1)
597b8e:	50                   	push   %eax
597b8f:	e8 ec 74 f7 ff       	call   0x50f080
597b94:	8b d0                	mov    %eax,%edx
597b96:	83 c4 04             	add    $0x4,%esp
597b99:	85 d2                	test   %edx,%edx
597b9b:	75 26                	jne    0x597bc3
597b9d:	8d 44 24 08          	lea    0x8(%esp),%eax
597ba1:	50                   	push   %eax
597ba2:	e8 c9 7f f5 ff       	call   0x4efb70
597ba7:	8b d0                	mov    %eax,%edx
597ba9:	83 c4 04             	add    $0x4,%esp
597bac:	85 d2                	test   %edx,%edx
597bae:	75 13                	jne    0x597bc3
597bb0:	8d 44 24 08          	lea    0x8(%esp),%eax
597bb4:	50                   	push   %eax
597bb5:	e8 86 77 f5 ff       	call   0x4ef340
597bba:	8b d0                	mov    %eax,%edx
597bbc:	83 c4 04             	add    $0x4,%esp
597bbf:	85 d2                	test   %edx,%edx
597bc1:	74 35                	je     0x597bf8
597bc3:	8b 3e                	mov    (%esi),%edi
597bc5:	33 c9                	xor    %ecx,%ecx
597bc7:	85 ff                	test   %edi,%edi
597bc9:	74 11                	je     0x597bdc
597bcb:	8d 46 04             	lea    0x4(%esi),%eax
597bce:	66 90                	xchg   %ax,%ax
597bd0:	39 10                	cmp    %edx,(%eax)
597bd2:	74 24                	je     0x597bf8
597bd4:	41                   	inc    %ecx
597bd5:	83 c0 04             	add    $0x4,%eax
597bd8:	3b cf                	cmp    %edi,%ecx
597bda:	72 f4                	jb     0x597bd0
597bdc:	89 54 be 04          	mov    %edx,0x4(%esi,%edi,4)
597be0:	b8 01 00 00 00       	mov    $0x1,%eax
597be5:	ff 06                	incl   (%esi)
597be7:	5f                   	pop    %edi
597be8:	5e                   	pop    %esi
597be9:	8b 4c 24 14          	mov    0x14(%esp),%ecx
597bed:	33 cc                	xor    %esp,%ecx
597bef:	e8 32 9e 03 00       	call   0x5d1a26
597bf4:	83 c4 18             	add    $0x18,%esp
597bf7:	c3                   	ret
597bf8:	8b 4c 24 1c          	mov    0x1c(%esp),%ecx