49aa1e:	c6 00 00             	movb   $0x0,(%eax)
49aa21:	8b c6                	mov    %esi,%eax
49aa23:	81 ff 00 10 00 00    	cmp    $0x1000,%edi
49aa29:	72 14                	jb     0x49aa3f
49aa2b:	8b 76 fc             	mov    -0x4(%esi),%esi
49aa2e:	83 c7 23             	add    $0x23,%edi
49aa31:	2b c6                	sub    %esi,%eax
49aa33:	83 c0 fc             	add    $0xfffffffc,%eax
49aa36:	83 f8 1f             	cmp    $0x1f,%eax
49aa39:	0f 87 f3 01 00 00    	ja     0x49ac32
49aa3f:	57                   	push   %edi
49aa40:	56                   	push   %esi
49aa41:	e8 2c 66 14 00       	call   0x5e1072
49aa46:	83 c4 08             	add    $0x8,%esp
49aa49:	eb 19                	jmp    0x49aa64
49aa4b:	8d 4d b8             	lea    -0x48(%ebp),%ecx
49aa4e:	51                   	push   %ecx
49aa4f:	50                   	push   %eax
49aa50:	e8 ab 84 14 00       	call   0x5e2f00
49aa55:	8b 45 90             	mov    -0x70(%ebp),%eax
49aa58:	83 c4 0c             	add    $0xc,%esp
49aa5b:	c6 00 00             	movb   $0x0,(%eax)
49aa5e:	8b 45 8c             	mov    -0x74(%ebp),%eax
49aa61:	c6 00 00             	movb   $0x0,(%eax)
49aa64:	8b 45 88             	mov    -0x78(%ebp),%eax
49aa67:	8b 7d 84             	mov    -0x7c(%ebp),%edi
49aa6a:	89 45 b8             	mov    %eax,-0x48(%ebp)
49aa6d:	8b 4d 9c             	mov    -0x64(%ebp),%ecx
49aa70:	8d 55 a0             	lea    -0x60(%ebp),%edx
49aa73:	52                   	push   %edx
49aa74:	8b 01                	mov    (%ecx),%eax
49aa76:	ff 50 1c             	call   *0x1c(%eax)
49aa79:	83 7d b4 10          	cmpl   $0x10,-0x4c(%ebp)
49aa7d:	8d 45 a0             	lea    -0x60(%ebp),%eax
49aa80:	ff 75 b0             	push   -0x50(%ebp)
49aa83:	0f 43 45 a0          	cmovae -0x60(%ebp),%eax
49aa87:	8d 4d b8             	lea    -0x48(%ebp),%ecx
49aa8a:	50                   	push   %eax
49aa8b:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
49aa8f:	e8 2c a6 fa ff       	call   0x4450c0
49aa94:	8b 55 b4             	mov    -0x4c(%ebp),%edx
49aa97:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
49aa9b:	83 fa 10             	cmp    $0x10,%edx
49aa9e:	72 2c                	jb     0x49aacc
49aaa0:	8b 4d a0             	mov    -0x60(%ebp),%ecx
49aaa3:	42                   	inc    %edx
49aaa4:	8b c1                	mov    %ecx,%eax
49aaa6:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
49aaac:	72 14                	jb     0x49aac2
49aaae:	8b 49 fc             	mov    -0x4(%ecx),%ecx
49aab1:	83 c2 23             	add    $0x23,%edx
49aab4:	2b c1                	sub    %ecx,%eax
49aab6:	83 c0 fc             	add    $0xfffffffc,%eax
49aab9:	83 f8 1f             	cmp    $0x1f,%eax
49aabc:	0f 87 6b 01 00 00    	ja     0x49ac2d
49aac2:	52                   	push   %edx
49aac3:	51                   	push   %ecx
49aac4:	e8 a9 65 14 00       	call   0x5e1072
49aac9:	83 c4 08             	add    $0x8,%esp
49aacc:	83 7d cc 10          	cmpl   $0x10,-0x34(%ebp)
49aad0:	8d 45 b8             	lea    -0x48(%ebp),%eax
49aad3:	8b 75 b8             	mov    -0x48(%ebp),%esi
49aad6:	0f 43 c6             	cmovae %esi,%eax
49aad9:	50                   	push   %eax
49aada:	6a 02                	push   $0x2
49aadc:	8d 45 14             	lea    0x14(%ebp),%eax
49aadf:	50                   	push   %eax
49aae0:	8d 45 0c             	lea    0xc(%ebp),%eax
49aae3:	50                   	push   %eax
49aae4:	e8 a7 8a ff ff       	call   0x493590
49aae9:	83 c4 10             	add    $0x10,%esp
49aaec:	83 e8 00             	sub    $0x0,%eax
49aaef:	74 15                	je     0x49ab06
49aaf1:	83 e8 01             	sub    $0x1,%eax
49aaf4:	74 0b                	je     0x49ab01
49aaf6:	c6 07 00             	movb   $0x0,(%edi)
49aaf9:	c7 03 02 00 00 00    	movl   $0x2,(%ebx)
49aaff:	eb 08                	jmp    0x49ab09
49ab01:	c6 07 01             	movb   $0x1,(%edi)
49ab04:	eb 03                	jmp    0x49ab09
49ab06:	c6 07 00             	movb   $0x0,(%edi)
49ab09:	8b 45 cc             	mov    -0x34(%ebp),%eax
49ab0c:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
49ab13:	83 f8 10             	cmp    $0x10,%eax
49ab16:	0f 82 c4 00 00 00    	jb     0x49abe0
49ab1c:	8d 48 01             	lea    0x1(%eax),%ecx
49ab1f:	8b c6                	mov    %esi,%eax
49ab21:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
49ab27:	72 14                	jb     0x49ab3d
49ab29:	8b 76 fc             	mov    -0x4(%esi),%esi
49ab2c:	83 c1 23             	add    $0x23,%ecx
49ab2f:	2b c6                	sub    %esi,%eax
49ab31:	83 c0 fc             	add    $0xfffffffc,%eax
49ab34:	83 f8 1f             	cmp    $0x1f,%eax
49ab37:	0f 87 f5 00 00 00    	ja     0x49ac32
49ab3d:	51                   	push   %ecx
49ab3e:	56                   	push   %esi
49ab3f:	e8 2e 65 14 00       	call   0x5e1072
49ab44:	83 c4 08             	add    $0x8,%esp
49ab47:	e9 94 00 00 00       	jmp    0x49abe0
49ab4c:	ff 50 04             	call   *0x4(%eax)
49ab4f:	8d 45 94             	lea    -0x6c(%ebp),%eax
49ab52:	c7 45 fc 04 00 00 00 	movl   $0x4,-0x4(%ebp)
49ab59:	50                   	push   %eax
49ab5a:	ff 76 14             	push   0x14(%esi)
49ab5d:	8d 45 14             	lea    0x14(%ebp),%eax
49ab60:	50                   	push   %eax
49ab61:	8d 45 0c             	lea    0xc(%ebp),%eax
49ab64:	50                   	push   %eax
49ab65:	8d 45 d0             	lea    -0x30(%ebp),%eax
49ab68:	50                   	push   %eax
49ab69:	ff 75 9c             	push   -0x64(%ebp)
49ab6c:	e8 1f e3 ff ff       	call   0x498e90
49ab71:	8b 4d 98             	mov    -0x68(%ebp),%ecx
49ab74:	83 c4 18             	add    $0x18,%esp
49ab77:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
49ab7e:	8b f0                	mov    %eax,%esi
49ab80:	85 c9                	test   %ecx,%ecx
49ab82:	74 11                	je     0x49ab95
49ab84:	8b 01                	mov    (%ecx),%eax
49ab86:	ff 50 08             	call   *0x8(%eax)
49ab89:	8b c8                	mov    %eax,%ecx
49ab8b:	85 c9                	test   %ecx,%ecx
49ab8d:	74 06                	je     0x49ab95
49ab8f:	8b 01                	mov    (%ecx),%eax
49ab91:	6a 01                	push   $0x1
49ab93:	ff 10                	call   *(%eax)
49ab95:	80 7d d0 00          	cmpb   $0x0,-0x30(%ebp)
49ab99:	75 05                	jne    0x49aba0
49ab9b:	c6 07 00             	movb   $0x0,(%edi)
49ab9e:	eb 3a                	jmp    0x49abda
49aba0:	8d 45 98             	lea    -0x68(%ebp),%eax
49aba3:	50                   	push   %eax
49aba4:	56                   	push   %esi
49aba5:	8d 45 9c             	lea    -0x64(%ebp),%eax
49aba8:	50                   	push   %eax
49aba9:	8d 45 d0             	lea    -0x30(%ebp),%eax
49abac:	50                   	push   %eax
49abad:	e8 32 45 13 00       	call   0x5cf0e4
49abb2:	8b c8                	mov    %eax,%ecx
49abb4:	83 c4 10             	add    $0x10,%esp
49abb7:	8d 45 d0             	lea    -0x30(%ebp),%eax
49abba:	39 45 9c             	cmp    %eax,-0x64(%ebp)
49abbd:	74 18                	je     0x49abd7
49abbf:	83 7d 98 00          	cmpl   $0x0,-0x68(%ebp)
49abc3:	75 12                	jne    0x49abd7
49abc5:	85 c9                	test   %ecx,%ecx
49abc7:	0f 95 c0             	setne  %al
49abca:	88 07                	mov    %al,(%edi)
49abcc:	85 c9                	test   %ecx,%ecx
49abce:	74 10                	je     0x49abe0
49abd0:	83 f9 01             	cmp    $0x1,%ecx
49abd3:	74 0b                	je     0x49abe0
49abd5:	eb 03                	jmp    0x49abda
49abd7:	c6 07 01             	movb   $0x1,(%edi)
49abda:	c7 03 02 00 00 00    	movl   $0x2,(%ebx)
49abe0:	8d 45 14             	lea    0x14(%ebp),%eax
49abe3:	50                   	push   %eax
49abe4:	8d 45 0c             	lea    0xc(%ebp),%eax
49abe7:	50                   	push   %eax
49abe8:	e8 f3 85 ff ff       	call   0x4931e0
49abed:	83 c4 08             	add    $0x8,%esp
49abf0:	84 c0                	test   %al,%al
49abf2:	74 03                	je     0x49abf7
49abf4:	83 0b 01             	orl    $0x1,(%ebx)
49abf7:	8b 45 80             	mov    -0x80(%ebp),%eax
49abfa:	8b 4d 0c             	mov    0xc(%ebp),%ecx
49abfd:	89 08                	mov    %ecx,(%eax)
49abff:	8b 4d 10             	mov    0x10(%ebp),%ecx
49ac02:	89 48 04             	mov    %ecx,0x4(%eax)
49ac05:	8b 4d f4             	mov    -0xc(%ebp),%ecx
49ac08:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
49ac0f:	59                   	pop    %ecx
49ac10:	5f                   	pop    %edi
49ac11:	5e                   	pop    %esi
49ac12:	5b                   	pop    %ebx
49ac13:	8b 4d f0             	mov    -0x10(%ebp),%ecx
49ac16:	33 cd                	xor    %ebp,%ecx
49ac18:	e8 bd 68 14 00       	call   0x5e14da
49ac1d:	8b e5                	mov    %ebp,%esp
49ac1f:	5d                   	pop    %ebp
49ac20:	c2 20 00             	ret    $0x20
49ac23:	e8 07 23 15 00       	call   0x5ecf2f
49ac28:	e8 03 a4 fa ff       	call   0x445030
49ac2d:	e8 fd 22 15 00       	call   0x5ecf2f
49ac32:	e8 f8 22 15 00       	call   0x5ecf2f
49ac37:	cc                   	int3
49ac38:	cc                   	int3
49ac39:	cc                   	int3
49ac3a:	cc                   	int3
49ac3b:	cc                   	int3
49ac3c:	cc                   	int3
49ac3d:	cc                   	int3
49ac3e:	cc                   	int3
49ac3f:	cc                   	int3
49ac40:	55                   	push   %ebp
49ac41:	8b ec                	mov    %esp,%ebp
49ac43:	6a ff                	push   $0xffffffff
49ac45:	68 e0 80 65 00       	push   $0x6580e0
49ac4a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
49ac50:	50                   	push   %eax
49ac51:	83 ec 24             	sub    $0x24,%esp
49ac54:	56                   	push   %esi
49ac55:	57                   	push   %edi
49ac56:	a1 d4 89 72 00       	mov    0x7289d4,%eax
49ac5b:	33 c5                	xor    %ebp,%eax
49ac5d:	50                   	push   %eax
49ac5e:	8d 45 f4             	lea    -0xc(%ebp),%eax
49ac61:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
49ac67:	8b f1                	mov    %ecx,%esi
49ac69:	8b 06                	mov    (%esi),%eax
49ac6b:	8b 40 04             	mov    0x4(%eax),%eax
49ac6e:	8b 7c 30 38          	mov    0x38(%eax,%esi,1),%edi
49ac72:	85 ff                	test   %edi,%edi
49ac74:	0f 84 a7 00 00 00    	je     0x49ad21
49ac7a:	8b 07                	mov    (%edi),%eax
49ac7c:	8b cf                	mov    %edi,%ecx
49ac7e:	89 75 ec             	mov    %esi,-0x14(%ebp)
49ac81:	ff 50 04             	call   *0x4(%eax)
49ac84:	8b 06                	mov    (%esi),%eax
49ac86:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
49ac8d:	8b 40 04             	mov    0x4(%eax),%eax
49ac90:	83 7c 30 0c 00       	cmpl   $0x0,0xc(%eax,%esi,1)
49ac95:	8d 0c 30             	lea    (%eax,%esi,1),%ecx
49ac98:	74 04                	je     0x49ac9e
49ac9a:	32 c0                	xor    %al,%al
49ac9c:	eb 21                	jmp    0x49acbf
49ac9e:	8b 49 3c             	mov    0x3c(%ecx),%ecx
49aca1:	85 c9                	test   %ecx,%ecx
49aca3:	74 18                	je     0x49acbd
49aca5:	3b ce                	cmp    %esi,%ecx
49aca7:	74 14                	je     0x49acbd
49aca9:	e8 92 ff ff ff       	call   0x49ac40
49acae:	8b 06                	mov    (%esi),%eax
49acb0:	8b 40 04             	mov    0x4(%eax),%eax
49acb3:	83 7c 30 0c 00       	cmpl   $0x0,0xc(%eax,%esi,1)
49acb8:	0f 94 c0             	sete   %al
49acbb:	eb 02                	jmp    0x49acbf
49acbd:	b0 01                	mov    $0x1,%al
49acbf:	88 45 f0             	mov    %al,-0x10(%ebp)
49acc2:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
49acc9:	84 c0                	test   %al,%al
49accb:	74 27                	je     0x49acf4
49accd:	8b 07                	mov    (%edi),%eax
49accf:	8b cf                	mov    %edi,%ecx
49acd1:	ff 50 34             	call   *0x34(%eax)
49acd4:	83 f8 ff             	cmp    $0xffffffff,%eax
49acd7:	75 1b                	jne    0x49acf4
49acd9:	8b 06                	mov    (%esi),%eax
49acdb:	8b 48 04             	mov    0x4(%eax),%ecx
49acde:	8b 44 31 0c          	mov    0xc(%ecx,%esi,1),%eax
49ace2:	83 e0 13             	and    $0x13,%eax
49ace5:	83 c8 04             	or     $0x4,%eax
49ace8:	89 44 31 0c          	mov    %eax,0xc(%ecx,%esi,1)
49acec:	8b 4c 31 10          	mov    0x10(%ecx,%esi,1),%ecx
49acf0:	23 c8                	and    %eax,%ecx
49acf2:	75 40                	jne    0x49ad34
49acf4:	c7 45 fc 02 00 00 00 	movl   $0x2,-0x4(%ebp)
49acfb:	e8 6e 37 13 00       	call   0x5ce46e
49ad00:	84 c0                	test   %al,%al
49ad02:	75 07                	jne    0x49ad0b
49ad04:	8b ce                	mov    %esi,%ecx
49ad06:	e8 f5 57 fb ff       	call   0x450500
49ad0b:	8b 06                	mov    (%esi),%eax
49ad0d:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
49ad11:	8b 40 04             	mov    0x4(%eax),%eax
49ad14:	8b 4c 30 38          	mov    0x38(%eax,%esi,1),%ecx
49ad18:	85 c9                	test   %ecx,%ecx
49ad1a:	74 05                	je     0x49ad21
49ad1c:	8b 01                	mov    (%ecx),%eax
49ad1e:	ff 50 08             	call   *0x8(%eax)
49ad21:	8b c6                	mov    %esi,%eax
49ad23:	8b 4d f4             	mov    -0xc(%ebp),%ecx
49ad26:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
49ad2d:	59                   	pop    %ecx
49ad2e:	5f                   	pop    %edi
49ad2f:	5e                   	pop    %esi
49ad30:	8b e5                	mov    %ebp,%esp
49ad32:	5d                   	pop    %ebp
49ad33:	c3                   	ret
49ad34:	f6 c1 04             	test   $0x4,%cl
49ad37:	74 07                	je     0x49ad40
49ad39:	be 34 c4 68 00       	mov    $0x68c434,%esi
49ad3e:	eb 10                	jmp    0x49ad50
49ad40:	f6 c1 02             	test   $0x2,%cl
49ad43:	be 4c c4 68 00       	mov    $0x68c44c,%esi
49ad48:	b8 64 c4 68 00       	mov    $0x68c464,%eax
49ad4d:	0f 44 f0             	cmove  %eax,%esi
49ad50:	8d 45 e4             	lea    -0x1c(%ebp),%eax
49ad53:	6a 01                	push   $0x1
49ad55:	50                   	push   %eax
49ad56:	e8 75 f2 f9 ff       	call   0x439fd0
49ad5b:	83 c4 08             	add    $0x8,%esp
49ad5e:	8d 4d d0             	lea    -0x30(%ebp),%ecx
49ad61:	50                   	push   %eax
49ad62:	56                   	push   %esi
49ad63:	e8 88 f7 f9 ff       	call   0x43a4f0
49ad68:	68 0c 60 70 00       	push   $0x70600c
49ad6d:	8d 45 d0             	lea    -0x30(%ebp),%eax
49ad70:	50                   	push   %eax
49ad71:	e8 bc 7c 14 00       	call   0x5e2a32
49ad76:	cc                   	int3
49ad77:	cc                   	int3
49ad78:	cc                   	int3
49ad79:	cc                   	int3
49ad7a:	cc                   	int3
49ad7b:	cc                   	int3
49ad7c:	cc                   	int3
49ad7d:	cc                   	int3
49ad7e:	cc                   	int3
49ad7f:	cc                   	int3
49ad80:	55                   	push   %ebp
49ad81:	8b ec                	mov    %esp,%ebp
49ad83:	51                   	push   %ecx
49ad84:	53                   	push   %ebx
49ad85:	56                   	push   %esi
49ad86:	8d 71 10             	lea    0x10(%ecx),%esi
49ad89:	8b ce                	mov    %esi,%ecx
49ad8b:	e8 40 ed ff ff       	call   0x499ad0
49ad90:	8b 45 08             	mov    0x8(%ebp),%eax
49ad93:	89 45 08             	mov    %eax,0x8(%ebp)
49ad96:	83 78 14 10          	cmpl   $0x10,0x14(%eax)
49ad9a:	72 05                	jb     0x49ada1
49ad9c:	8b 08                	mov    (%eax),%ecx
49ad9e:	89 4d 08             	mov    %ecx,0x8(%ebp)
49ada1:	8b 48 10             	mov    0x10(%eax),%ecx
49ada4:	8b 5e 3c             	mov    0x3c(%esi),%ebx
49ada7:	89 4d fc             	mov    %ecx,-0x4(%ebp)
49adaa:	81 f9 ff ff ff 7f    	cmp    $0x7fffffff,%ecx
49adb0:	0f 87 b3 00 00 00    	ja     0x49ae69
49adb6:	85 c9                	test   %ecx,%ecx
49adb8:	0f 84 99 00 00 00    	je     0x49ae57
49adbe:	8b c3                	mov    %ebx,%eax
49adc0:	83 e0 06             	and    $0x6,%eax
49adc3:	3c 06                	cmp    $0x6,%al
49adc5:	0f 84 8c 00 00 00    	je     0x49ae57
49adcb:	57                   	push   %edi
49adcc:	51                   	push   %ecx
49adcd:	8d 4e 40             	lea    0x40(%esi),%ecx
49add0:	e8 7b e6 f9 ff       	call   0x439450
49add5:	ff 75 fc             	push   -0x4(%ebp)
49add8:	8b f8                	mov    %eax,%edi
49adda:	ff 75 08             	push   0x8(%ebp)
49addd:	57                   	push   %edi
49adde:	e8 1d 81 14 00       	call   0x5e2f00
49ade3:	8b 55 fc             	mov    -0x4(%ebp),%edx
49ade6:	8b c3                	mov    %ebx,%eax
49ade8:	83 c4 0c             	add    $0xc,%esp
49adeb:	83 e0 04             	and    $0x4,%eax
49adee:	89 45 08             	mov    %eax,0x8(%ebp)