511935:	74 07                	je     0x51193e
511937:	be ec 02 73 00       	mov    $0x7302ec,%esi
51193c:	eb 09                	jmp    0x511947
51193e:	8d 0c 80             	lea    (%eax,%eax,4),%ecx
511941:	8b 43 68             	mov    0x68(%ebx),%eax
511944:	8d 34 88             	lea    (%eax,%ecx,4),%esi
511947:	8a 1e                	mov    (%esi),%bl
511949:	80 fb 60             	cmp    $0x60,%bl
51194c:	75 26                	jne    0x511974
51194e:	8b 45 0c             	mov    0xc(%ebp),%eax
511951:	39 46 0c             	cmp    %eax,0xc(%esi)
511954:	75 1e                	jne    0x511974
511956:	8b 45 10             	mov    0x10(%ebp),%eax
511959:	8b 4e 08             	mov    0x8(%esi),%ecx
51195c:	3b 48 1c             	cmp    0x1c(%eax),%ecx
51195f:	74 31                	je     0x511992
511961:	8b 40 08             	mov    0x8(%eax),%eax
511964:	85 c0                	test   %eax,%eax
511966:	74 0c                	je     0x511974
511968:	3b 48 2c             	cmp    0x2c(%eax),%ecx
51196b:	74 25                	je     0x511992
51196d:	8b 40 14             	mov    0x14(%eax),%eax
511970:	85 c0                	test   %eax,%eax
511972:	75 f4                	jne    0x511968
511974:	80 fb a5             	cmp    $0xa5,%bl
511977:	75 05                	jne    0x51197e
511979:	39 56 10             	cmp    %edx,0x10(%esi)
51197c:	74 14                	je     0x511992
51197e:	8b 5d fc             	mov    -0x4(%ebp),%ebx
511981:	47                   	inc    %edi
511982:	8b 4b 6c             	mov    0x6c(%ebx),%ecx
511985:	3b f9                	cmp    %ecx,%edi
511987:	7c 9f                	jl     0x511928
511989:	5f                   	pop    %edi
51198a:	5e                   	pop    %esi
51198b:	33 c0                	xor    %eax,%eax
51198d:	5b                   	pop    %ebx
51198e:	8b e5                	mov    %ebp,%esp
511990:	5d                   	pop    %ebp
511991:	c3                   	ret
511992:	5f                   	pop    %edi
511993:	5e                   	pop    %esi
511994:	b8 01 00 00 00       	mov    $0x1,%eax
511999:	5b                   	pop    %ebx
51199a:	8b e5                	mov    %ebp,%esp
51199c:	5d                   	pop    %ebp
51199d:	c3                   	ret
51199e:	cc                   	int3
51199f:	cc                   	int3
5119a0:	55                   	push   %ebp
5119a1:	8b ec                	mov    %esp,%ebp
5119a3:	83 ec 1c             	sub    $0x1c,%esp
5119a6:	8b 45 14             	mov    0x14(%ebp),%eax
5119a9:	53                   	push   %ebx
5119aa:	56                   	push   %esi
5119ab:	57                   	push   %edi
5119ac:	8b 58 38             	mov    0x38(%eax),%ebx
5119af:	0f b6 48 09          	movzbl 0x9(%eax),%ecx
5119b3:	8b 40 34             	mov    0x34(%eax),%eax
5119b6:	8b 7d 0c             	mov    0xc(%ebp),%edi
5119b9:	89 5d fc             	mov    %ebx,-0x4(%ebp)
5119bc:	8b 70 24             	mov    0x24(%eax),%esi
5119bf:	8b 00                	mov    (%eax),%eax
5119c1:	8d 14 1e             	lea    (%esi,%ebx,1),%edx
5119c4:	8b 80 d0 00 00 00    	mov    0xd0(%eax),%eax
5119ca:	89 55 f8             	mov    %edx,-0x8(%ebp)
5119cd:	8b 55 10             	mov    0x10(%ebp),%edx
5119d0:	03 d7                	add    %edi,%edx
5119d2:	89 45 ec             	mov    %eax,-0x14(%ebp)
5119d5:	8d 04 0b             	lea    (%ebx,%ecx,1),%eax
5119d8:	89 55 e8             	mov    %edx,-0x18(%ebp)
5119db:	0f b6 48 05          	movzbl 0x5(%eax),%ecx
5119df:	8b 55 14             	mov    0x14(%ebp),%edx
5119e2:	89 45 e4             	mov    %eax,-0x1c(%ebp)
5119e5:	0f b6 40 06          	movzbl 0x6(%eax),%eax
5119e9:	c1 e1 08             	shl    $0x8,%ecx
5119ec:	8b 52 40             	mov    0x40(%edx),%edx
5119ef:	0b c8                	or     %eax,%ecx
5119f1:	89 55 f4             	mov    %edx,-0xc(%ebp)
5119f4:	33 d2                	xor    %edx,%edx
5119f6:	3b ce                	cmp    %esi,%ecx
5119f8:	0f 46 d1             	cmovbe %ecx,%edx
5119fb:	2b f2                	sub    %edx,%esi
5119fd:	56                   	push   %esi
5119fe:	8d 04 1a             	lea    (%edx,%ebx,1),%eax
511a01:	50                   	push   %eax
511a02:	8b 45 ec             	mov    -0x14(%ebp),%eax
511a05:	03 c2                	add    %edx,%eax
511a07:	50                   	push   %eax
511a08:	e8 f3 14 0d 00       	call   0x5e2f00
511a0d:	8b 4d 08             	mov    0x8(%ebp),%ecx
511a10:	83 c4 0c             	add    $0xc,%esp
511a13:	83 c1 28             	add    $0x28,%ecx
511a16:	33 c0                	xor    %eax,%eax
511a18:	39 39                	cmp    %edi,(%ecx)
511a1a:	7f 11                	jg     0x511a2d
511a1c:	0f 1f 40 00          	nopl   0x0(%eax)
511a20:	83 f8 06             	cmp    $0x6,%eax
511a23:	7d 08                	jge    0x511a2d
511a25:	83 c1 04             	add    $0x4,%ecx
511a28:	40                   	inc    %eax
511a29:	39 39                	cmp    %edi,(%ecx)
511a2b:	7e f3                	jle    0x511a20
511a2d:	8b 4d 08             	mov    0x8(%ebp),%ecx
511a30:	8d 40 04             	lea    0x4(%eax),%eax
511a33:	8b 55 f8             	mov    -0x8(%ebp),%edx
511a36:	8b da                	mov    %edx,%ebx
511a38:	8d 34 81             	lea    (%ecx,%eax,4),%esi
511a3b:	8b 06                	mov    (%esi),%eax
511a3d:	89 45 f0             	mov    %eax,-0x10(%ebp)
511a40:	8b 41 08             	mov    0x8(%ecx),%eax
511a43:	8b 49 0c             	mov    0xc(%ecx),%ecx
511a46:	8b 04 b8             	mov    (%eax,%edi,4),%eax
511a49:	0f b7 0c 79          	movzwl (%ecx,%edi,2),%ecx
511a4d:	3b 45 fc             	cmp    -0x4(%ebp),%eax
511a50:	72 18                	jb     0x511a6a
511a52:	3b c2                	cmp    %edx,%eax
511a54:	73 14                	jae    0x511a6a
511a56:	8b d1                	mov    %ecx,%edx
511a58:	8d 0c 02             	lea    (%edx,%eax,1),%ecx
511a5b:	3b 4d f8             	cmp    -0x8(%ebp),%ecx
511a5e:	77 77                	ja     0x511ad7
511a60:	8b 4d ec             	mov    -0x14(%ebp),%ecx
511a63:	2b 4d fc             	sub    -0x4(%ebp),%ecx
511a66:	03 c1                	add    %ecx,%eax
511a68:	eb 0f                	jmp    0x511a79
511a6a:	8b d1                	mov    %ecx,%edx
511a6c:	8d 0c 02             	lea    (%edx,%eax,1),%ecx
511a6f:	3b 4d f0             	cmp    -0x10(%ebp),%ecx
511a72:	76 05                	jbe    0x511a79
511a74:	3b 45 f0             	cmp    -0x10(%ebp),%eax
511a77:	72 6a                	jb     0x511ae3
511a79:	8b 7d f4             	mov    -0xc(%ebp),%edi
511a7c:	2b da                	sub    %edx,%ebx
511a7e:	8b cb                	mov    %ebx,%ecx
511a80:	2b 4d fc             	sub    -0x4(%ebp),%ecx
511a83:	c1 f9 08             	sar    $0x8,%ecx
511a86:	88 0f                	mov    %cl,(%edi)
511a88:	8a cb                	mov    %bl,%cl
511a8a:	2a 4d fc             	sub    -0x4(%ebp),%cl
511a8d:	88 4f 01             	mov    %cl,0x1(%edi)
511a90:	8b cf                	mov    %edi,%ecx
511a92:	8b 7d 0c             	mov    0xc(%ebp),%edi
511a95:	83 c1 02             	add    $0x2,%ecx
511a98:	89 4d f4             	mov    %ecx,-0xc(%ebp)
511a9b:	3b d9                	cmp    %ecx,%ebx
511a9d:	0f 82 90 00 00 00    	jb     0x511b33
511aa3:	52                   	push   %edx
511aa4:	50                   	push   %eax
511aa5:	53                   	push   %ebx
511aa6:	e8 55 14 0d 00       	call   0x5e2f00
511aab:	47                   	inc    %edi
511aac:	83 c4 0c             	add    $0xc,%esp
511aaf:	89 7d 0c             	mov    %edi,0xc(%ebp)
511ab2:	3b 7d e8             	cmp    -0x18(%ebp),%edi
511ab5:	7d 38                	jge    0x511aef
511ab7:	8b 55 f8             	mov    -0x8(%ebp),%edx
511aba:	8b 4d 08             	mov    0x8(%ebp),%ecx
511abd:	39 7e 18             	cmp    %edi,0x18(%esi)
511ac0:	0f 8f 7a ff ff ff    	jg     0x511a40
511ac6:	8b 56 04             	mov    0x4(%esi),%edx
511ac9:	83 c6 04             	add    $0x4,%esi
511acc:	89 55 f0             	mov    %edx,-0x10(%ebp)
511acf:	8b 55 f8             	mov    -0x8(%ebp),%edx
511ad2:	e9 69 ff ff ff       	jmp    0x511a40
511ad7:	68 fc c4 6b 00       	push   $0x6bc4fc
511adc:	68 8a 15 01 00       	push   $0x1158a
511ae1:	eb 5a                	jmp    0x511b3d
511ae3:	68 fc c4 6b 00       	push   $0x6bc4fc
511ae8:	68 8f 15 01 00       	push   $0x1158f
511aed:	eb 4e                	jmp    0x511b3d
511aef:	8b 4d 14             	mov    0x14(%ebp),%ecx
511af2:	8b 55 e4             	mov    -0x1c(%ebp),%edx
511af5:	8b 45 10             	mov    0x10(%ebp),%eax
511af8:	5f                   	pop    %edi
511af9:	66 89 41 18          	mov    %ax,0x18(%ecx)
511afd:	c6 41 0c 00          	movb   $0x0,0xc(%ecx)
511b01:	66 c7 42 01 00 00    	movw   $0x0,0x1(%edx)
511b07:	0f b6 41 19          	movzbl 0x19(%ecx),%eax
511b0b:	88 42 03             	mov    %al,0x3(%edx)
511b0e:	0f b6 41 18          	movzbl 0x18(%ecx),%eax
511b12:	8b 4d fc             	mov    -0x4(%ebp),%ecx
511b15:	88 42 04             	mov    %al,0x4(%edx)
511b18:	8b c3                	mov    %ebx,%eax
511b1a:	2b c1                	sub    %ecx,%eax
511b1c:	2a d9                	sub    %cl,%bl
511b1e:	c1 f8 08             	sar    $0x8,%eax
511b21:	88 42 05             	mov    %al,0x5(%edx)
511b24:	33 c0                	xor    %eax,%eax
511b26:	88 5a 06             	mov    %bl,0x6(%edx)
511b29:	5e                   	pop    %esi
511b2a:	c6 42 07 00          	movb   $0x0,0x7(%edx)
511b2e:	5b                   	pop    %ebx
511b2f:	8b e5                	mov    %ebp,%esp
511b31:	5d                   	pop    %ebp
511b32:	c3                   	ret
511b33:	68 fc c4 6b 00       	push   $0x6bc4fc
511b38:	68 95 15 01 00       	push   $0x11595
511b3d:	68 94 c4 6b 00       	push   $0x6bc494
511b42:	68 78 c4 6b 00       	push   $0x6bc478
511b47:	6a 0b                	push   $0xb
511b49:	e8 92 e4 fc ff       	call   0x4dffe0
511b4e:	83 c4 14             	add    $0x14,%esp
511b51:	b8 0b 00 00 00       	mov    $0xb,%eax
511b56:	5f                   	pop    %edi
511b57:	5e                   	pop    %esi
511b58:	5b                   	pop    %ebx
511b59:	8b e5                	mov    %ebp,%esp
511b5b:	5d                   	pop    %ebp
511b5c:	c3                   	ret
511b5d:	cc                   	int3
511b5e:	cc                   	int3
511b5f:	cc                   	int3
511b60:	55                   	push   %ebp
511b61:	8b ec                	mov    %esp,%ebp
511b63:	83 ec 0c             	sub    $0xc,%esp
511b66:	8b 4d 08             	mov    0x8(%ebp),%ecx
511b69:	0f 57 c0             	xorps  %xmm0,%xmm0
511b6c:	53                   	push   %ebx
511b6d:	56                   	push   %esi
511b6e:	66 0f 13 45 f8       	movlpd %xmm0,-0x8(%ebp)
511b73:	0f b7 71 34          	movzwl 0x34(%ecx),%esi
511b77:	83 ee 01             	sub    $0x1,%esi
511b7a:	8b 5d fc             	mov    -0x4(%ebp),%ebx
511b7d:	78 74                	js     0x511bf3
511b7f:	8b 41 04             	mov    0x4(%ecx),%eax
511b82:	8b 49 0c             	mov    0xc(%ecx),%ecx
511b85:	57                   	push   %edi
511b86:	89 4d f4             	mov    %ecx,-0xc(%ebp)
511b89:	8d 3c 70             	lea    (%eax,%esi,2),%edi
511b8c:	8b 45 f8             	mov    -0x8(%ebp),%eax
511b8f:	89 45 fc             	mov    %eax,-0x4(%ebp)
511b92:	0f bf 07             	movswl (%edi),%eax
511b95:	85 c0                	test   %eax,%eax
511b97:	78 33                	js     0x511bcc
511b99:	8b 49 04             	mov    0x4(%ecx),%ecx
511b9c:	8d 14 80             	lea    (%eax,%eax,4),%edx
511b9f:	f6 44 91 10 20       	testb  $0x20,0x10(%ecx,%edx,4)
511ba4:	75 2b                	jne    0x511bd1
511ba6:	83 f8 3f             	cmp    $0x3f,%eax
511ba9:	7d 26                	jge    0x511bd1
511bab:	33 c9                	xor    %ecx,%ecx
511bad:	33 d2                	xor    %edx,%edx
511baf:	0f ab c1             	bts    %eax,%ecx
511bb2:	83 f8 20             	cmp    $0x20,%eax
511bb5:	0f 43 d1             	cmovae %ecx,%edx
511bb8:	33 ca                	xor    %edx,%ecx
511bba:	83 f8 40             	cmp    $0x40,%eax
511bbd:	8b 45 fc             	mov    -0x4(%ebp),%eax
511bc0:	0f 43 d1             	cmovae %ecx,%edx
511bc3:	0b c1                	or     %ecx,%eax
511bc5:	89 45 fc             	mov    %eax,-0x4(%ebp)
511bc8:	0b da                	or     %edx,%ebx
511bca:	eb 08                	jmp    0x511bd4
511bcc:	8b 45 fc             	mov    -0x4(%ebp),%eax
511bcf:	eb 06                	jmp    0x511bd7
511bd1:	8b 45 fc             	mov    -0x4(%ebp),%eax
511bd4:	8b 4d f4             	mov    -0xc(%ebp),%ecx
511bd7:	83 ef 02             	sub    $0x2,%edi
511bda:	83 ee 01             	sub    $0x1,%esi
511bdd:	79 b3                	jns    0x511b92
511bdf:	8b 4d 08             	mov    0x8(%ebp),%ecx
511be2:	f7 d3                	not    %ebx
511be4:	5f                   	pop    %edi
511be5:	f7 d0                	not    %eax
511be7:	5e                   	pop    %esi
511be8:	89 59 44             	mov    %ebx,0x44(%ecx)
511beb:	89 41 40             	mov    %eax,0x40(%ecx)
511bee:	5b                   	pop    %ebx
511bef:	8b e5                	mov    %ebp,%esp
511bf1:	5d                   	pop    %ebp
511bf2:	c3                   	ret
511bf3:	8b 45 f8             	mov    -0x8(%ebp),%eax
511bf6:	f7 d3                	not    %ebx
511bf8:	f7 d0                	not    %eax
511bfa:	89 59 44             	mov    %ebx,0x44(%ecx)
511bfd:	5e                   	pop    %esi
511bfe:	89 41 40             	mov    %eax,0x40(%ecx)
511c01:	5b                   	pop    %ebx
511c02:	8b e5                	mov    %ebp,%esp
511c04:	5d                   	pop    %ebp
511c05:	c3                   	ret
511c06:	cc                   	int3
511c07:	cc                   	int3
511c08:	cc                   	int3
511c09:	cc                   	int3
511c0a:	cc                   	int3
511c0b:	cc                   	int3
511c0c:	cc                   	int3
511c0d:	cc                   	int3
511c0e:	cc                   	int3
511c0f:	cc                   	int3
511c10:	55                   	push   %ebp
511c11:	8b ec                	mov    %esp,%ebp
511c13:	8b 4d 0c             	mov    0xc(%ebp),%ecx
511c16:	56                   	push   %esi
511c17:	57                   	push   %edi
511c18:	8b 7d 08             	mov    0x8(%ebp),%edi
511c1b:	be 80 00 00 00       	mov    $0x80,%esi
511c20:	8d 04 cd 00 00 00 00 	lea    0x0(,%ecx,8),%eax
511c27:	3d 00 04 00 00       	cmp    $0x400,%eax
511c2c:	0f 46 f1             	cmovbe %ecx,%esi
511c2f:	3b 37                	cmp    (%edi),%esi
511c31:	75 06                	jne    0x511c39
511c33:	5f                   	pop    %edi
511c34:	33 c0                	xor    %eax,%eax
511c36:	5e                   	pop    %esi
511c37:	5d                   	pop    %ebp
511c38:	c3                   	ret
511c39:	a1 70 00 73 00       	mov    0x730070,%eax
511c3e:	85 c0                	test   %eax,%eax
511c40:	74 02                	je     0x511c44
511c42:	ff d0                	call   *%eax
511c44:	53                   	push   %ebx
511c45:	8d 04 f5 00 00 00 00 	lea    0x0(,%esi,8),%eax
511c4c:	6a 00                	push   $0x0
511c4e:	50                   	push   %eax
511c4f:	e8 0c f3 01 00       	call   0x530f60
511c54:	8b 0d 74 00 73 00    	mov    0x730074,%ecx
511c5a:	83 c4 08             	add    $0x8,%esp
511c5d:	8b d8                	mov    %eax,%ebx
511c5f:	89 5d 08             	mov    %ebx,0x8(%ebp)
511c62:	85 c9                	test   %ecx,%ecx
511c64:	74 02                	je     0x511c68
511c66:	ff d1                	call   *%ecx
511c68:	85 db                	test   %ebx,%ebx
511c6a:	75 07                	jne    0x511c73
511c6c:	5b                   	pop    %ebx
511c6d:	5f                   	pop    %edi
511c6e:	33 c0                	xor    %eax,%eax
511c70:	5e                   	pop    %esi
511c71:	5d                   	pop    %ebp
511c72:	c3                   	ret
511c73:	ff 77 0c             	push   0xc(%edi)
511c76:	e8 15 91 fd ff       	call   0x4ead90
511c7b:	53                   	push   %ebx
511c7c:	89 5f 0c             	mov    %ebx,0xc(%edi)
511c7f:	ff 15 3c 18 72 00    	call   *0x72183c
511c85:	c1 e8 03             	shr    $0x3,%eax
511c88:	89 45 0c             	mov    %eax,0xc(%ebp)
511c8b:	89 07                	mov    %eax,(%edi)
511c8d:	8d 0c c5 00 00 00 00 	lea    0x0(,%eax,8),%ecx
511c94:	51                   	push   %ecx
511c95:	6a 00                	push   $0x0
511c97:	53                   	push   %ebx
511c98:	e8 63 1d 0d 00       	call   0x5e3a00
511c9d:	8b 4f 08             	mov    0x8(%edi),%ecx
511ca0:	83 c4 14             	add    $0x14,%esp
511ca3:	c7 47 08 00 00 00 00 	movl   $0x0,0x8(%edi)
511caa:	85 c9                	test   %ecx,%ecx