5d8907:	8b 46 08             	mov    0x8(%esi),%eax
5d890a:	33 db                	xor    %ebx,%ebx
5d890c:	c6 40 1c 01          	movb   $0x1,0x1c(%eax)
5d8910:	c7 40 18 16 00 00 00 	movl   $0x16,0x18(%eax)
5d8917:	ff 76 08             	push   0x8(%esi)
5d891a:	53                   	push   %ebx
5d891b:	53                   	push   %ebx
5d891c:	53                   	push   %ebx
5d891d:	53                   	push   %ebx
5d891e:	53                   	push   %ebx
5d891f:	e8 3f d8 ff ff       	call   0x5d6163
5d8924:	83 c4 18             	add    $0x18,%esp
5d8927:	83 c8 ff             	or     $0xffffffff,%eax
5d892a:	5f                   	pop    %edi
5d892b:	5e                   	pop    %esi
5d892c:	5b                   	pop    %ebx
5d892d:	c9                   	leave
5d892e:	c3                   	ret
5d892f:	8b 86 50 04 00 00    	mov    0x450(%esi),%eax
5d8935:	40                   	inc    %eax
5d8936:	89 86 50 04 00 00    	mov    %eax,0x450(%esi)
5d893c:	83 f8 02             	cmp    $0x2,%eax
5d893f:	0f 84 d6 01 00 00    	je     0x5d8b1b
5d8945:	33 db                	xor    %ebx,%ebx
5d8947:	89 5e 34             	mov    %ebx,0x34(%esi)
5d894a:	88 5e 18             	mov    %bl,0x18(%esi)
5d894d:	8a 11                	mov    (%ecx),%dl
5d894f:	41                   	inc    %ecx
5d8950:	88 55 ff             	mov    %dl,-0x1(%ebp)
5d8953:	89 4e 0c             	mov    %ecx,0xc(%esi)
5d8956:	88 56 2d             	mov    %dl,0x2d(%esi)
5d8959:	84 d2                	test   %dl,%dl
5d895b:	0f 84 a7 01 00 00    	je     0x5d8b08
5d8961:	88 55 f0             	mov    %dl,-0x10(%ebp)
5d8964:	8d 46 14             	lea    0x14(%esi),%eax
5d8967:	39 18                	cmp    %ebx,(%eax)
5d8969:	0f 8c 99 01 00 00    	jl     0x5d8b08
5d896f:	0f b6 46 18          	movzbl 0x18(%esi),%eax
5d8973:	8b ce                	mov    %esi,%ecx
5d8975:	50                   	push   %eax
5d8976:	ff 75 f0             	push   -0x10(%ebp)
5d8979:	e8 a0 fd ff ff       	call   0x5d871e
5d897e:	88 46 18             	mov    %al,0x18(%esi)
5d8981:	3c 08                	cmp    $0x8,%al
5d8983:	0f 83 d3 01 00 00    	jae    0x5d8b5c
5d8989:	0f b6 c0             	movzbl %al,%eax
5d898c:	83 f8 07             	cmp    $0x7,%eax
5d898f:	77 96                	ja     0x5d8927
5d8991:	ff 24 85 71 8b 5d 00 	jmp    *0x5d8b71(,%eax,4)
5d8998:	8b 7e 08             	mov    0x8(%esi),%edi
5d899b:	88 5e 38             	mov    %bl,0x38(%esi)
5d899e:	89 7d f8             	mov    %edi,-0x8(%ebp)
5d89a1:	38 5f 14             	cmp    %bl,0x14(%edi)
5d89a4:	75 0d                	jne    0x5d89b3
5d89a6:	8b cf                	mov    %edi,%ecx
5d89a8:	e8 d3 1d 00 00       	call   0x5da780
5d89ad:	8b 46 08             	mov    0x8(%esi),%eax
5d89b0:	89 45 f8             	mov    %eax,-0x8(%ebp)
5d89b3:	8a 46 2d             	mov    0x2d(%esi),%al
5d89b6:	89 45 ec             	mov    %eax,-0x14(%ebp)
5d89b9:	88 45 f4             	mov    %al,-0xc(%ebp)
5d89bc:	0f be c0             	movsbl %al,%eax
5d89bf:	68 00 80 00 00       	push   $0x8000
5d89c4:	50                   	push   %eax
5d89c5:	8b 47 0c             	mov    0xc(%edi),%eax
5d89c8:	ff 30                	push   (%eax)
5d89ca:	e8 51 d4 ff ff       	call   0x5d5e20
5d89cf:	83 c4 0c             	add    $0xc,%esp
5d89d2:	8d 7e 14             	lea    0x14(%esi),%edi
5d89d5:	85 c0                	test   %eax,%eax
5d89d7:	74 29                	je     0x5d8a02
5d89d9:	ff 75 f8             	push   -0x8(%ebp)
5d89dc:	8d 8e 48 04 00 00    	lea    0x448(%esi),%ecx
5d89e2:	57                   	push   %edi
5d89e3:	ff 75 ec             	push   -0x14(%ebp)
5d89e6:	e8 fb 1e 00 00       	call   0x5da8e6
5d89eb:	8b 46 0c             	mov    0xc(%esi),%eax
5d89ee:	8a 08                	mov    (%eax),%cl
5d89f0:	40                   	inc    %eax
5d89f1:	89 46 0c             	mov    %eax,0xc(%esi)
5d89f4:	88 4e 2d             	mov    %cl,0x2d(%esi)
5d89f7:	84 c9                	test   %cl,%cl
5d89f9:	0f 84 24 01 00 00    	je     0x5d8b23
5d89ff:	88 4d f4             	mov    %cl,-0xc(%ebp)
5d8a02:	ff 76 08             	push   0x8(%esi)
5d8a05:	8d 8e 48 04 00 00    	lea    0x448(%esi),%ecx
5d8a0b:	57                   	push   %edi
5d8a0c:	ff 75 f4             	push   -0xc(%ebp)
5d8a0f:	e8 d2 1e 00 00       	call   0x5da8e6
5d8a14:	e9 d0 00 00 00       	jmp    0x5d8ae9
5d8a19:	83 4e 24 ff          	orl    $0xffffffff,0x24(%esi)
5d8a1d:	89 5e 20             	mov    %ebx,0x20(%esi)
5d8a20:	88 5e 2c             	mov    %bl,0x2c(%esi)
5d8a23:	89 5e 1c             	mov    %ebx,0x1c(%esi)
5d8a26:	89 5e 28             	mov    %ebx,0x28(%esi)
5d8a29:	88 5e 38             	mov    %bl,0x38(%esi)
5d8a2c:	e9 b8 00 00 00       	jmp    0x5d8ae9
5d8a31:	0f be 45 ff          	movsbl -0x1(%ebp),%eax
5d8a35:	83 e8 20             	sub    $0x20,%eax
5d8a38:	74 37                	je     0x5d8a71
5d8a3a:	83 e8 03             	sub    $0x3,%eax
5d8a3d:	74 2c                	je     0x5d8a6b
5d8a3f:	83 e8 08             	sub    $0x8,%eax
5d8a42:	74 21                	je     0x5d8a65
5d8a44:	48                   	dec    %eax
5d8a45:	83 e8 01             	sub    $0x1,%eax
5d8a48:	74 12                	je     0x5d8a5c
5d8a4a:	83 e8 03             	sub    $0x3,%eax
5d8a4d:	0f 85 96 00 00 00    	jne    0x5d8ae9
5d8a53:	83 4e 1c 08          	orl    $0x8,0x1c(%esi)
5d8a57:	e9 8d 00 00 00       	jmp    0x5d8ae9
5d8a5c:	83 4e 1c 04          	orl    $0x4,0x1c(%esi)
5d8a60:	e9 84 00 00 00       	jmp    0x5d8ae9
5d8a65:	83 4e 1c 01          	orl    $0x1,0x1c(%esi)
5d8a69:	eb 7e                	jmp    0x5d8ae9
5d8a6b:	83 4e 1c 20          	orl    $0x20,0x1c(%esi)
5d8a6f:	eb 78                	jmp    0x5d8ae9
5d8a71:	83 4e 1c 02          	orl    $0x2,0x1c(%esi)
5d8a75:	eb 72                	jmp    0x5d8ae9
5d8a77:	80 7d ff 2a          	cmpb   $0x2a,-0x1(%ebp)
5d8a7b:	74 0d                	je     0x5d8a8a
5d8a7d:	8d 46 20             	lea    0x20(%esi),%eax
5d8a80:	50                   	push   %eax
5d8a81:	8b ce                	mov    %esi,%ecx
5d8a83:	e8 67 fd ff ff       	call   0x5d87ef
5d8a88:	eb 57                	jmp    0x5d8ae1
5d8a8a:	8b 4e 10             	mov    0x10(%esi),%ecx
5d8a8d:	8d 41 04             	lea    0x4(%ecx),%eax
5d8a90:	89 46 10             	mov    %eax,0x10(%esi)
5d8a93:	8b 01                	mov    (%ecx),%eax
5d8a95:	89 46 20             	mov    %eax,0x20(%esi)
5d8a98:	85 c0                	test   %eax,%eax
5d8a9a:	79 09                	jns    0x5d8aa5
5d8a9c:	83 4e 1c 04          	orl    $0x4,0x1c(%esi)
5d8aa0:	f7 d8                	neg    %eax
5d8aa2:	89 46 20             	mov    %eax,0x20(%esi)
5d8aa5:	b0 01                	mov    $0x1,%al
5d8aa7:	eb 38                	jmp    0x5d8ae1
5d8aa9:	89 5e 24             	mov    %ebx,0x24(%esi)
5d8aac:	eb 3b                	jmp    0x5d8ae9
5d8aae:	80 7d ff 2a          	cmpb   $0x2a,-0x1(%ebp)
5d8ab2:	74 05                	je     0x5d8ab9
5d8ab4:	8d 46 24             	lea    0x24(%esi),%eax
5d8ab7:	eb c7                	jmp    0x5d8a80
5d8ab9:	8b 4e 10             	mov    0x10(%esi),%ecx
5d8abc:	8d 41 04             	lea    0x4(%ecx),%eax
5d8abf:	89 46 10             	mov    %eax,0x10(%esi)
5d8ac2:	8b 01                	mov    (%ecx),%eax
5d8ac4:	89 46 24             	mov    %eax,0x24(%esi)
5d8ac7:	85 c0                	test   %eax,%eax
5d8ac9:	79 da                	jns    0x5d8aa5
5d8acb:	83 4e 24 ff          	orl    $0xffffffff,0x24(%esi)
5d8acf:	eb d4                	jmp    0x5d8aa5
5d8ad1:	8b ce                	mov    %esi,%ecx
5d8ad3:	e8 c9 05 00 00       	call   0x5d90a1
5d8ad8:	eb 07                	jmp    0x5d8ae1
5d8ada:	8b ce                	mov    %esi,%ecx
5d8adc:	e8 fc 09 00 00       	call   0x5d94dd
5d8ae1:	84 c0                	test   %al,%al
5d8ae3:	0f 84 3e fe ff ff    	je     0x5d8927
5d8ae9:	8b 46 0c             	mov    0xc(%esi),%eax
5d8aec:	8a 10                	mov    (%eax),%dl
5d8aee:	8d 48 01             	lea    0x1(%eax),%ecx
5d8af1:	89 4e 0c             	mov    %ecx,0xc(%esi)
5d8af4:	8d 46 14             	lea    0x14(%esi),%eax
5d8af7:	88 55 ff             	mov    %dl,-0x1(%ebp)
5d8afa:	88 56 2d             	mov    %dl,0x2d(%esi)
5d8afd:	88 55 f0             	mov    %dl,-0x10(%ebp)
5d8b00:	84 d2                	test   %dl,%dl
5d8b02:	0f 85 5f fe ff ff    	jne    0x5d8967
5d8b08:	ff 86 50 04 00 00    	incl   0x450(%esi)
5d8b0e:	83 be 50 04 00 00 02 	cmpl   $0x2,0x450(%esi)
5d8b15:	0f 85 2c fe ff ff    	jne    0x5d8947
5d8b1b:	8b 46 14             	mov    0x14(%esi),%eax
5d8b1e:	e9 07 fe ff ff       	jmp    0x5d892a
5d8b23:	8b 46 08             	mov    0x8(%esi),%eax
5d8b26:	6a 16                	push   $0x16
5d8b28:	5f                   	pop    %edi
5d8b29:	c6 40 1c 01          	movb   $0x1,0x1c(%eax)
5d8b2d:	89 78 18             	mov    %edi,0x18(%eax)
5d8b30:	ff 76 08             	push   0x8(%esi)
5d8b33:	53                   	push   %ebx
5d8b34:	53                   	push   %ebx
5d8b35:	53                   	push   %ebx
5d8b36:	53                   	push   %ebx
5d8b37:	53                   	push   %ebx
5d8b38:	e8 26 d6 ff ff       	call   0x5d6163
5d8b3d:	8b 46 08             	mov    0x8(%esi),%eax
5d8b40:	c6 40 1c 01          	movb   $0x1,0x1c(%eax)
5d8b44:	89 78 18             	mov    %edi,0x18(%eax)
5d8b47:	ff 76 08             	push   0x8(%esi)
5d8b4a:	53                   	push   %ebx
5d8b4b:	53                   	push   %ebx
5d8b4c:	53                   	push   %ebx
5d8b4d:	53                   	push   %ebx
5d8b4e:	53                   	push   %ebx
5d8b4f:	e8 0f d6 ff ff       	call   0x5d6163
5d8b54:	83 c4 30             	add    $0x30,%esp
5d8b57:	e9 cb fd ff ff       	jmp    0x5d8927
5d8b5c:	8b 4e 08             	mov    0x8(%esi),%ecx
5d8b5f:	c6 41 1c 01          	movb   $0x1,0x1c(%ecx)
5d8b63:	c7 41 18 16 00 00 00 	movl   $0x16,0x18(%ecx)
5d8b6a:	e9 a8 fd ff ff       	jmp    0x5d8917
5d8b6f:	8b ff                	mov    %edi,%edi
5d8b71:	98                   	cwtl
5d8b72:	89 5d 00             	mov    %ebx,0x0(%ebp)
5d8b75:	19 8a 5d 00 31 8a    	sbb    %ecx,-0x75ceffa3(%edx)
5d8b7b:	5d                   	pop    %ebp
5d8b7c:	00 77 8a             	add    %dh,-0x76(%edi)
5d8b7f:	5d                   	pop    %ebp
5d8b80:	00 a9 8a 5d 00 ae    	add    %ch,-0x51ffa276(%ecx)
5d8b86:	8a 5d 00             	mov    0x0(%ebp),%bl
5d8b89:	d1 8a 5d 00 da 8a    	rorl   $1,-0x7525ffa3(%edx)
5d8b8f:	5d                   	pop    %ebp
5d8b90:	00 8b ff 55 8b ec    	add    %cl,-0x1374aa01(%ebx)
5d8b96:	51                   	push   %ecx
5d8b97:	51                   	push   %ecx
5d8b98:	53                   	push   %ebx
5d8b99:	56                   	push   %esi
5d8b9a:	8b f1                	mov    %ecx,%esi
5d8b9c:	57                   	push   %edi
5d8b9d:	ff 76 08             	push   0x8(%esi)
5d8ba0:	8d 8e 48 04 00 00    	lea    0x448(%esi),%ecx
5d8ba6:	e8 83 1c 00 00       	call   0x5da82e
5d8bab:	84 c0                	test   %al,%al
5d8bad:	74 27                	je     0x5d8bd6
5d8baf:	8b 4e 0c             	mov    0xc(%esi),%ecx
5d8bb2:	85 c9                	test   %ecx,%ecx
5d8bb4:	75 28                	jne    0x5d8bde
5d8bb6:	8b 46 08             	mov    0x8(%esi),%eax
5d8bb9:	33 db                	xor    %ebx,%ebx
5d8bbb:	c6 40 1c 01          	movb   $0x1,0x1c(%eax)
5d8bbf:	c7 40 18 16 00 00 00 	movl   $0x16,0x18(%eax)
5d8bc6:	ff 76 08             	push   0x8(%esi)
5d8bc9:	53                   	push   %ebx
5d8bca:	53                   	push   %ebx
5d8bcb:	53                   	push   %ebx
5d8bcc:	53                   	push   %ebx
5d8bcd:	53                   	push   %ebx
5d8bce:	e8 90 d5 ff ff       	call   0x5d6163
5d8bd3:	83 c4 18             	add    $0x18,%esp
5d8bd6:	83 c8 ff             	or     $0xffffffff,%eax
5d8bd9:	5f                   	pop    %edi
5d8bda:	5e                   	pop    %esi
5d8bdb:	5b                   	pop    %ebx
5d8bdc:	c9                   	leave
5d8bdd:	c3                   	ret
5d8bde:	8b 86 50 04 00 00    	mov    0x450(%esi),%eax
5d8be4:	40                   	inc    %eax
5d8be5:	89 86 50 04 00 00    	mov    %eax,0x450(%esi)
5d8beb:	83 f8 02             	cmp    $0x2,%eax
5d8bee:	0f 84 36 02 00 00    	je     0x5d8e2a
5d8bf4:	33 db                	xor    %ebx,%ebx
5d8bf6:	89 5e 34             	mov    %ebx,0x34(%esi)
5d8bf9:	88 5e 18             	mov    %bl,0x18(%esi)
5d8bfc:	8a 11                	mov    (%ecx),%dl
5d8bfe:	41                   	inc    %ecx
5d8bff:	88 55 ff             	mov    %dl,-0x1(%ebp)
5d8c02:	89 4e 0c             	mov    %ecx,0xc(%esi)
5d8c05:	88 56 2d             	mov    %dl,0x2d(%esi)
5d8c08:	84 d2                	test   %dl,%dl
5d8c0a:	0f 84 07 02 00 00    	je     0x5d8e17
5d8c10:	88 55 fb             	mov    %dl,-0x5(%ebp)
5d8c13:	39 5e 14             	cmp    %ebx,0x14(%esi)
5d8c16:	0f 8c fb 01 00 00    	jl     0x5d8e17
5d8c1c:	0f b6 46 18          	movzbl 0x18(%esi),%eax
5d8c20:	8b ce                	mov    %esi,%ecx
5d8c22:	50                   	push   %eax
5d8c23:	ff 75 fb             	push   -0x5(%ebp)
5d8c26:	e8 f3 fa ff ff       	call   0x5d871e
5d8c2b:	88 46 18             	mov    %al,0x18(%esi)
5d8c2e:	3c 08                	cmp    $0x8,%al
5d8c30:	0f 83 fc 01 00 00    	jae    0x5d8e32
5d8c36:	0f b6 c0             	movzbl %al,%eax
5d8c39:	83 f8 07             	cmp    $0x7,%eax
5d8c3c:	77 98                	ja     0x5d8bd6
5d8c3e:	ff 24 85 45 8e 5d 00 	jmp    *0x5d8e45(,%eax,4)
5d8c45:	8b 7e 08             	mov    0x8(%esi),%edi
5d8c48:	88 5e 38             	mov    %bl,0x38(%esi)
5d8c4b:	38 5f 14             	cmp    %bl,0x14(%edi)
5d8c4e:	75 07                	jne    0x5d8c57
5d8c50:	8b cf                	mov    %edi,%ecx
5d8c52:	e8 29 1b 00 00       	call   0x5da780
5d8c57:	8a 46 2d             	mov    0x2d(%esi),%al
5d8c5a:	88 45 ff             	mov    %al,-0x1(%ebp)
5d8c5d:	0f be c0             	movsbl %al,%eax
5d8c60:	68 00 80 00 00       	push   $0x8000
5d8c65:	50                   	push   %eax
5d8c66:	8b 47 0c             	mov    0xc(%edi),%eax
5d8c69:	ff 30                	push   (%eax)
5d8c6b:	e8 b0 d1 ff ff       	call   0x5d5e20
5d8c70:	83 c4 0c             	add    $0xc,%esp
5d8c73:	8d be 48 04 00 00    	lea    0x448(%esi),%edi
5d8c79:	85 c0                	test   %eax,%eax
5d8c7b:	74 76                	je     0x5d8cf3
5d8c7d:	8b 0f                	mov    (%edi),%ecx
5d8c7f:	8b 41 08             	mov    0x8(%ecx),%eax
5d8c82:	3b 41 04             	cmp    0x4(%ecx),%eax
5d8c85:	75 10                	jne    0x5d8c97
5d8c87:	38 59 0c             	cmp    %bl,0xc(%ecx)
5d8c8a:	74 05                	je     0x5d8c91
5d8c8c:	ff 46 14             	incl   0x14(%esi)
5d8c8f:	eb 19                	jmp    0x5d8caa
5d8c91:	83 4e 14 ff          	orl    $0xffffffff,0x14(%esi)
5d8c95:	eb 13                	jmp    0x5d8caa
5d8c97:	ff 46 14             	incl   0x14(%esi)
5d8c9a:	ff 41 08             	incl   0x8(%ecx)
5d8c9d:	8b 07                	mov    (%edi),%eax
5d8c9f:	8a 4d ff             	mov    -0x1(%ebp),%cl
5d8ca2:	8b 00                	mov    (%eax),%eax
5d8ca4:	88 08                	mov    %cl,(%eax)
5d8ca6:	8b 07                	mov    (%edi),%eax
5d8ca8:	ff 00                	incl   (%eax)
5d8caa:	8b 46 0c             	mov    0xc(%esi),%eax
5d8cad:	8a 08                	mov    (%eax),%cl
5d8caf:	40                   	inc    %eax
5d8cb0:	89 46 0c             	mov    %eax,0xc(%esi)
5d8cb3:	88 4e 2d             	mov    %cl,0x2d(%esi)
5d8cb6:	84 c9                	test   %cl,%cl
5d8cb8:	75 3c                	jne    0x5d8cf6
5d8cba:	8b 46 08             	mov    0x8(%esi),%eax
5d8cbd:	6a 16                	push   $0x16
5d8cbf:	5f                   	pop    %edi
5d8cc0:	c6 40 1c 01          	movb   $0x1,0x1c(%eax)
5d8cc4:	89 78 18             	mov    %edi,0x18(%eax)
5d8cc7:	ff 76 08             	push   0x8(%esi)
5d8cca:	53                   	push   %ebx
5d8ccb:	53                   	push   %ebx
5d8ccc:	53                   	push   %ebx
5d8ccd:	53                   	push   %ebx
5d8cce:	53                   	push   %ebx
5d8ccf:	e8 8f d4 ff ff       	call   0x5d6163
5d8cd4:	8b 46 08             	mov    0x8(%esi),%eax
5d8cd7:	c6 40 1c 01          	movb   $0x1,0x1c(%eax)
5d8cdb:	89 78 18             	mov    %edi,0x18(%eax)
5d8cde:	ff 76 08             	push   0x8(%esi)
5d8ce1:	53                   	push   %ebx
5d8ce2:	53                   	push   %ebx
5d8ce3:	53                   	push   %ebx
5d8ce4:	53                   	push   %ebx
5d8ce5:	53                   	push   %ebx
5d8ce6:	e8 78 d4 ff ff       	call   0x5d6163
5d8ceb:	83 c4 30             	add    $0x30,%esp
5d8cee:	e9 e3 fe ff ff       	jmp    0x5d8bd6
5d8cf3:	8a 4d ff             	mov    -0x1(%ebp),%cl
5d8cf6:	8b 17                	mov    (%edi),%edx
5d8cf8:	8b 42 08             	mov    0x8(%edx),%eax
5d8cfb:	3b 42 04             	cmp    0x4(%edx),%eax
5d8cfe:	75 16                	jne    0x5d8d16
5d8d00:	38 5a 0c             	cmp    %bl,0xc(%edx)