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)
49adf1:	8d 0c 17             	lea    (%edi,%edx,1),%ecx
49adf4:	89 4e 38             	mov    %ecx,0x38(%esi)
49adf7:	75 0f                	jne    0x49ae08
49adf9:	8b 46 0c             	mov    0xc(%esi),%eax
49adfc:	89 38                	mov    %edi,(%eax)
49adfe:	8b 46 1c             	mov    0x1c(%esi),%eax
49ae01:	89 38                	mov    %edi,(%eax)
49ae03:	8b 46 2c             	mov    0x2c(%esi),%eax
49ae06:	89 10                	mov    %edx,(%eax)
49ae08:	f6 c3 02             	test   $0x2,%bl
49ae0b:	75 3b                	jne    0x49ae48
49ae0d:	f6 c3 18             	test   $0x18,%bl
49ae10:	74 07                	je     0x49ae19
49ae12:	8b 4e 38             	mov    0x38(%esi),%ecx
49ae15:	8b d1                	mov    %ecx,%edx
49ae17:	eb 05                	jmp    0x49ae1e
49ae19:	8b 56 38             	mov    0x38(%esi),%edx
49ae1c:	8b cf                	mov    %edi,%ecx
49ae1e:	8b 46 10             	mov    0x10(%esi),%eax
49ae21:	2b d1                	sub    %ecx,%edx
49ae23:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
49ae27:	89 38                	mov    %edi,(%eax)
49ae29:	8b 46 20             	mov    0x20(%esi),%eax
49ae2c:	89 08                	mov    %ecx,(%eax)
49ae2e:	8b 46 30             	mov    0x30(%esi),%eax
49ae31:	89 10                	mov    %edx,(%eax)
49ae33:	74 13                	je     0x49ae48
49ae35:	8b 46 0c             	mov    0xc(%esi),%eax
49ae38:	89 38                	mov    %edi,(%eax)
49ae3a:	8b 46 1c             	mov    0x1c(%esi),%eax
49ae3d:	c7 00 00 00 00 00    	movl   $0x0,(%eax)
49ae43:	8b 46 2c             	mov    0x2c(%esi),%eax
49ae46:	89 38                	mov    %edi,(%eax)
49ae48:	83 cb 01             	or     $0x1,%ebx
49ae4b:	5f                   	pop    %edi
49ae4c:	89 5e 3c             	mov    %ebx,0x3c(%esi)
49ae4f:	5e                   	pop    %esi
49ae50:	5b                   	pop    %ebx
49ae51:	8b e5                	mov    %ebp,%esp
49ae53:	5d                   	pop    %ebp
49ae54:	c2 04 00             	ret    $0x4
49ae57:	89 5e 3c             	mov    %ebx,0x3c(%esi)
49ae5a:	c7 46 38 00 00 00 00 	movl   $0x0,0x38(%esi)
49ae61:	5e                   	pop    %esi
49ae62:	5b                   	pop    %ebx
49ae63:	8b e5                	mov    %ebp,%esp
49ae65:	5d                   	pop    %ebp
49ae66:	c2 04 00             	ret    $0x4
49ae69:	e8 df 34 13 00       	call   0x5ce34d
49ae6e:	cc                   	int3
49ae6f:	cc                   	int3
49ae70:	55                   	push   %ebp
49ae71:	8b ec                	mov    %esp,%ebp
49ae73:	6a ff                	push   $0xffffffff
49ae75:	68 13 81 65 00       	push   $0x658113
49ae7a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
49ae80:	50                   	push   %eax
49ae81:	83 ec 08             	sub    $0x8,%esp
49ae84:	53                   	push   %ebx
49ae85:	56                   	push   %esi
49ae86:	57                   	push   %edi
49ae87:	a1 d4 89 72 00       	mov    0x7289d4,%eax
49ae8c:	33 c5                	xor    %ebp,%eax
49ae8e:	50                   	push   %eax
49ae8f:	8d 45 f4             	lea    -0xc(%ebp),%eax
49ae92:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
49ae98:	8b f1                	mov    %ecx,%esi
49ae9a:	89 75 f0             	mov    %esi,-0x10(%ebp)
49ae9d:	c7 06 14 4d 69 00    	movl   $0x694d14,(%esi)
49aea3:	c7 46 04 00 00 00 00 	movl   $0x0,0x4(%esi)
49aeaa:	c7 46 08 00 00 00 00 	movl   $0x0,0x8(%esi)
49aeb1:	6a 18                	push   $0x18
49aeb3:	6a 01                	push   $0x1
49aeb5:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
49aebc:	e8 9d 37 15 00       	call   0x5ee65e
49aec1:	8b d8                	mov    %eax,%ebx
49aec3:	89 5d ec             	mov    %ebx,-0x14(%ebp)
49aec6:	6a 10                	push   $0x10
49aec8:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
49aecc:	e8 71 61 14 00       	call   0x5e1042
49aed1:	8b f8                	mov    %eax,%edi
49aed3:	83 c4 0c             	add    $0xc,%esp
49aed6:	89 7d ec             	mov    %edi,-0x14(%ebp)
49aed9:	85 ff                	test   %edi,%edi
49aedb:	74 27                	je     0x49af04
49aedd:	0f 57 c0             	xorps  %xmm0,%xmm0
49aee0:	66 0f d6 07          	movq   %xmm0,(%edi)
49aee4:	c7 47 08 00 00 00 00 	movl   $0x0,0x8(%edi)
49aeeb:	c7 47 04 01 00 00 00 	movl   $0x1,0x4(%edi)
49aef2:	c7 47 08 01 00 00 00 	movl   $0x1,0x8(%edi)
49aef9:	c7 07 1c 4d 69 00    	movl   $0x694d1c,(%edi)
49aeff:	89 5f 0c             	mov    %ebx,0xc(%edi)
49af02:	eb 02                	jmp    0x49af06
49af04:	33 ff                	xor    %edi,%edi
49af06:	6a 00                	push   $0x0
49af08:	6a 00                	push   $0x0
49af0a:	e8 63 61 14 00       	call   0x5e1072
49af0f:	89 5e 04             	mov    %ebx,0x4(%esi)
49af12:	83 c4 08             	add    $0x8,%esp
49af15:	8b 5e 08             	mov    0x8(%esi),%ebx
49af18:	89 7e 08             	mov    %edi,0x8(%esi)
49af1b:	85 db                	test   %ebx,%ebx
49af1d:	74 21                	je     0x49af40
49af1f:	83 cf ff             	or     $0xffffffff,%edi
49af22:	8b c7                	mov    %edi,%eax
49af24:	f0 0f c1 43 04       	lock xadd %eax,0x4(%ebx)
49af29:	75 15                	jne    0x49af40
49af2b:	8b 03                	mov    (%ebx),%eax
49af2d:	8b cb                	mov    %ebx,%ecx
49af2f:	ff 10                	call   *(%eax)
49af31:	f0 0f c1 7b 08       	lock xadd %edi,0x8(%ebx)
49af36:	4f                   	dec    %edi
49af37:	75 07                	jne    0x49af40
49af39:	8b 03                	mov    (%ebx),%eax
49af3b:	8b cb                	mov    %ebx,%ecx
49af3d:	ff 50 04             	call   *0x4(%eax)
49af40:	ff 76 04             	push   0x4(%esi)
49af43:	ff 15 d0 22 68 00    	call   *0x6822d0
49af49:	c6 46 0c 00          	movb   $0x0,0xc(%esi)
49af4d:	8b c6                	mov    %esi,%eax
49af4f:	8b 4d f4             	mov    -0xc(%ebp),%ecx
49af52:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
49af59:	59                   	pop    %ecx
49af5a:	5f                   	pop    %edi
49af5b:	5e                   	pop    %esi
49af5c:	5b                   	pop    %ebx
49af5d:	8b e5                	mov    %ebp,%esp
49af5f:	5d                   	pop    %ebp
49af60:	c3                   	ret
49af61:	cc                   	int3
49af62:	cc                   	int3
49af63:	cc                   	int3
49af64:	cc                   	int3
49af65:	cc                   	int3
49af66:	cc                   	int3
49af67:	cc                   	int3
49af68:	cc                   	int3
49af69:	cc                   	int3
49af6a:	cc                   	int3
49af6b:	cc                   	int3
49af6c:	cc                   	int3
49af6d:	cc                   	int3
49af6e:	cc                   	int3
49af6f:	cc                   	int3
49af70:	6a 00                	push   $0x0
49af72:	ff 31                	push   (%ecx)
49af74:	e8 f9 60 14 00       	call   0x5e1072
49af79:	83 c4 08             	add    $0x8,%esp
49af7c:	c3                   	ret
49af7d:	cc                   	int3
49af7e:	cc                   	int3
49af7f:	cc                   	int3
49af80:	56                   	push   %esi
49af81:	8b 71 04             	mov    0x4(%ecx),%esi
49af84:	85 f6                	test   %esi,%esi
49af86:	74 25                	je     0x49afad
49af88:	57                   	push   %edi
49af89:	83 cf ff             	or     $0xffffffff,%edi
49af8c:	8b c7                	mov    %edi,%eax
49af8e:	f0 0f c1 46 04       	lock xadd %eax,0x4(%esi)
49af93:	75 17                	jne    0x49afac
49af95:	8b 06                	mov    (%esi),%eax
49af97:	8b ce                	mov    %esi,%ecx
49af99:	ff 10                	call   *(%eax)
49af9b:	f0 0f c1 7e 08       	lock xadd %edi,0x8(%esi)
49afa0:	4f                   	dec    %edi
49afa1:	75 09                	jne    0x49afac
49afa3:	8b 06                	mov    (%esi),%eax
49afa5:	8b ce                	mov    %esi,%ecx
49afa7:	5f                   	pop    %edi
49afa8:	5e                   	pop    %esi
49afa9:	ff 60 04             	jmp    *0x4(%eax)
49afac:	5f                   	pop    %edi
49afad:	5e                   	pop    %esi
49afae:	c3                   	ret