46ad79:	5d                   	pop    %ebp
46ad7a:	c3                   	ret
46ad7b:	55                   	push   %ebp
46ad7c:	8b ec                	mov    %esp,%ebp
46ad7e:	57                   	push   %edi
46ad7f:	8b 7d 08             	mov    0x8(%ebp),%edi
46ad82:	80 7f 04 00          	cmpb   $0x0,0x4(%edi)
46ad86:	74 48                	je     0x46add0
46ad88:	8b 0f                	mov    (%edi),%ecx
46ad8a:	85 c9                	test   %ecx,%ecx
46ad8c:	74 42                	je     0x46add0
46ad8e:	8d 51 01             	lea    0x1(%ecx),%edx
46ad91:	8a 01                	mov    (%ecx),%al
46ad93:	41                   	inc    %ecx
46ad94:	84 c0                	test   %al,%al
46ad96:	75 f9                	jne    0x46ad91
46ad98:	2b ca                	sub    %edx,%ecx
46ad9a:	53                   	push   %ebx
46ad9b:	56                   	push   %esi
46ad9c:	8d 59 01             	lea    0x1(%ecx),%ebx
46ad9f:	53                   	push   %ebx
46ada0:	e8 5c e9 00 00       	call   0x479701
46ada5:	8b f0                	mov    %eax,%esi
46ada7:	59                   	pop    %ecx
46ada8:	85 f6                	test   %esi,%esi
46adaa:	74 19                	je     0x46adc5
46adac:	ff 37                	push   (%edi)
46adae:	53                   	push   %ebx
46adaf:	56                   	push   %esi
46adb0:	e8 89 67 01 00       	call   0x48153e
46adb5:	8b 45 0c             	mov    0xc(%ebp),%eax
46adb8:	8b ce                	mov    %esi,%ecx
46adba:	83 c4 0c             	add    $0xc,%esp
46adbd:	33 f6                	xor    %esi,%esi
46adbf:	89 08                	mov    %ecx,(%eax)
46adc1:	c6 40 04 01          	movb   $0x1,0x4(%eax)
46adc5:	56                   	push   %esi
46adc6:	e8 b7 e8 00 00       	call   0x479682
46adcb:	59                   	pop    %ecx
46adcc:	5e                   	pop    %esi
46adcd:	5b                   	pop    %ebx
46adce:	eb 0b                	jmp    0x46addb
46add0:	8b 4d 0c             	mov    0xc(%ebp),%ecx
46add3:	8b 07                	mov    (%edi),%eax
46add5:	89 01                	mov    %eax,(%ecx)
46add7:	c6 41 04 00          	movb   $0x0,0x4(%ecx)
46addb:	5f                   	pop    %edi
46addc:	5d                   	pop    %ebp
46addd:	c3                   	ret
46adde:	55                   	push   %ebp
46addf:	8b ec                	mov    %esp,%ebp
46ade1:	56                   	push   %esi
46ade2:	8b 75 08             	mov    0x8(%ebp),%esi
46ade5:	80 7e 04 00          	cmpb   $0x0,0x4(%esi)
46ade9:	74 08                	je     0x46adf3
46adeb:	ff 36                	push   (%esi)
46aded:	e8 90 e8 00 00       	call   0x479682
46adf2:	59                   	pop    %ecx
46adf3:	83 26 00             	andl   $0x0,(%esi)
46adf6:	c6 46 04 00          	movb   $0x0,0x4(%esi)
46adfa:	5e                   	pop    %esi
46adfb:	5d                   	pop    %ebp
46adfc:	c3                   	ret
46adfd:	cc                   	int3
46adfe:	cc                   	int3
46adff:	cc                   	int3
46ae00:	6a 08                	push   $0x8
46ae02:	68 00 15 4c 00       	push   $0x4c1500
46ae07:	e8 34 f9 ff ff       	call   0x46a740
46ae0c:	8b 45 08             	mov    0x8(%ebp),%eax
46ae0f:	85 c0                	test   %eax,%eax
46ae11:	74 7e                	je     0x46ae91
46ae13:	81 38 63 73 6d e0    	cmpl   $0xe06d7363,(%eax)
46ae19:	75 76                	jne    0x46ae91
46ae1b:	83 78 10 03          	cmpl   $0x3,0x10(%eax)
46ae1f:	75 70                	jne    0x46ae91
46ae21:	81 78 14 20 05 93 19 	cmpl   $0x19930520,0x14(%eax)
46ae28:	74 12                	je     0x46ae3c
46ae2a:	81 78 14 21 05 93 19 	cmpl   $0x19930521,0x14(%eax)
46ae31:	74 09                	je     0x46ae3c
46ae33:	81 78 14 22 05 93 19 	cmpl   $0x19930522,0x14(%eax)
46ae3a:	75 55                	jne    0x46ae91
46ae3c:	8b 48 1c             	mov    0x1c(%eax),%ecx
46ae3f:	85 c9                	test   %ecx,%ecx
46ae41:	74 4e                	je     0x46ae91
46ae43:	8b 51 04             	mov    0x4(%ecx),%edx
46ae46:	85 d2                	test   %edx,%edx
46ae48:	74 29                	je     0x46ae73
46ae4a:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
46ae4e:	52                   	push   %edx
46ae4f:	ff 70 18             	push   0x18(%eax)
46ae52:	e8 4a 00 00 00       	call   0x46aea1
46ae57:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
46ae5e:	eb 31                	jmp    0x46ae91
46ae60:	ff 75 0c             	push   0xc(%ebp)
46ae63:	ff 75 ec             	push   -0x14(%ebp)
46ae66:	e8 43 00 00 00       	call   0x46aeae
46ae6b:	59                   	pop    %ecx
46ae6c:	59                   	pop    %ecx
46ae6d:	c3                   	ret
46ae6e:	8b 65 e8             	mov    -0x18(%ebp),%esp
46ae71:	eb e4                	jmp    0x46ae57
46ae73:	f6 01 10             	testb  $0x10,(%ecx)
46ae76:	74 19                	je     0x46ae91
46ae78:	8b 40 18             	mov    0x18(%eax),%eax
46ae7b:	8b 08                	mov    (%eax),%ecx
46ae7d:	85 c9                	test   %ecx,%ecx
46ae7f:	74 10                	je     0x46ae91
46ae81:	8b 01                	mov    (%ecx),%eax
46ae83:	51                   	push   %ecx
46ae84:	8b 70 08             	mov    0x8(%eax),%esi
46ae87:	8b ce                	mov    %esi,%ecx
46ae89:	ff 15 d4 e2 49 00    	call   *0x49e2d4
46ae8f:	ff d6                	call   *%esi
46ae91:	8b 4d f0             	mov    -0x10(%ebp),%ecx
46ae94:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
46ae9b:	59                   	pop    %ecx
46ae9c:	5f                   	pop    %edi
46ae9d:	5e                   	pop    %esi
46ae9e:	5b                   	pop    %ebx
46ae9f:	c9                   	leave
46aea0:	c3                   	ret
46aea1:	55                   	push   %ebp
46aea2:	8b ec                	mov    %esp,%ebp
46aea4:	8b 4d 08             	mov    0x8(%ebp),%ecx
46aea7:	ff 55 0c             	call   *0xc(%ebp)
46aeaa:	5d                   	pop    %ebp
46aeab:	c2 08 00             	ret    $0x8
46aeae:	55                   	push   %ebp
46aeaf:	8b ec                	mov    %esp,%ebp
46aeb1:	80 7d 0c 00          	cmpb   $0x0,0xc(%ebp)
46aeb5:	74 32                	je     0x46aee9
46aeb7:	56                   	push   %esi
46aeb8:	57                   	push   %edi
46aeb9:	8b 7d 08             	mov    0x8(%ebp),%edi
46aebc:	8b 37                	mov    (%edi),%esi
46aebe:	81 3e 63 73 6d e0    	cmpl   $0xe06d7363,(%esi)
46aec4:	75 21                	jne    0x46aee7
46aec6:	83 7e 10 03          	cmpl   $0x3,0x10(%esi)
46aeca:	75 1b                	jne    0x46aee7
46aecc:	81 7e 14 20 05 93 19 	cmpl   $0x19930520,0x14(%esi)
46aed3:	74 18                	je     0x46aeed
46aed5:	81 7e 14 21 05 93 19 	cmpl   $0x19930521,0x14(%esi)
46aedc:	74 0f                	je     0x46aeed
46aede:	81 7e 14 22 05 93 19 	cmpl   $0x19930522,0x14(%esi)
46aee5:	74 06                	je     0x46aeed
46aee7:	5f                   	pop    %edi
46aee8:	5e                   	pop    %esi
46aee9:	33 c0                	xor    %eax,%eax
46aeeb:	5d                   	pop    %ebp
46aeec:	c3                   	ret
46aeed:	e8 aa 25 00 00       	call   0x46d49c
46aef2:	89 70 10             	mov    %esi,0x10(%eax)
46aef5:	8b 77 04             	mov    0x4(%edi),%esi
46aef8:	e8 9f 25 00 00       	call   0x46d49c
46aefd:	89 70 14             	mov    %esi,0x14(%eax)
46af00:	e8 4a a8 01 00       	call   0x48574f
46af05:	cc                   	int3
46af06:	55                   	push   %ebp
46af07:	8b ec                	mov    %esp,%ebp
46af09:	e8 8e 25 00 00       	call   0x46d49c
46af0e:	8b 40 24             	mov    0x24(%eax),%eax
46af11:	85 c0                	test   %eax,%eax
46af13:	74 0e                	je     0x46af23
46af15:	8b 4d 08             	mov    0x8(%ebp),%ecx
46af18:	39 08                	cmp    %ecx,(%eax)
46af1a:	74 0c                	je     0x46af28
46af1c:	8b 40 04             	mov    0x4(%eax),%eax
46af1f:	85 c0                	test   %eax,%eax
46af21:	75 f5                	jne    0x46af18
46af23:	33 c0                	xor    %eax,%eax
46af25:	40                   	inc    %eax
46af26:	5d                   	pop    %ebp
46af27:	c3                   	ret
46af28:	33 c0                	xor    %eax,%eax
46af2a:	5d                   	pop    %ebp
46af2b:	c3                   	ret
46af2c:	55                   	push   %ebp
46af2d:	8b ec                	mov    %esp,%ebp
46af2f:	8b 4d 0c             	mov    0xc(%ebp),%ecx
46af32:	8b 55 08             	mov    0x8(%ebp),%edx
46af35:	56                   	push   %esi
46af36:	8b 01                	mov    (%ecx),%eax
46af38:	8b 71 04             	mov    0x4(%ecx),%esi
46af3b:	03 c2                	add    %edx,%eax
46af3d:	85 f6                	test   %esi,%esi
46af3f:	78 0d                	js     0x46af4e
46af41:	8b 49 08             	mov    0x8(%ecx),%ecx
46af44:	8b 14 16             	mov    (%esi,%edx,1),%edx
46af47:	8b 0c 0a             	mov    (%edx,%ecx,1),%ecx
46af4a:	03 ce                	add    %esi,%ecx
46af4c:	03 c1                	add    %ecx,%eax
46af4e:	5e                   	pop    %esi
46af4f:	5d                   	pop    %ebp
46af50:	c3                   	ret
46af51:	55                   	push   %ebp
46af52:	8b ec                	mov    %esp,%ebp
46af54:	56                   	push   %esi
46af55:	8b 75 08             	mov    0x8(%ebp),%esi
46af58:	57                   	push   %edi
46af59:	8b 3e                	mov    (%esi),%edi
46af5b:	81 3f 52 43 43 e0    	cmpl   $0xe0434352,(%edi)
46af61:	74 12                	je     0x46af75
46af63:	81 3f 4d 4f 43 e0    	cmpl   $0xe0434f4d,(%edi)
46af69:	74 0a                	je     0x46af75
46af6b:	81 3f 63 73 6d e0    	cmpl   $0xe06d7363,(%edi)
46af71:	74 1b                	je     0x46af8e
46af73:	eb 13                	jmp    0x46af88
46af75:	e8 22 25 00 00       	call   0x46d49c
46af7a:	83 78 18 00          	cmpl   $0x0,0x18(%eax)
46af7e:	7e 08                	jle    0x46af88
46af80:	e8 17 25 00 00       	call   0x46d49c
46af85:	ff 48 18             	decl   0x18(%eax)
46af88:	5f                   	pop    %edi
46af89:	33 c0                	xor    %eax,%eax
46af8b:	5e                   	pop    %esi
46af8c:	5d                   	pop    %ebp
46af8d:	c3                   	ret
46af8e:	e8 09 25 00 00       	call   0x46d49c
46af93:	89 78 10             	mov    %edi,0x10(%eax)
46af96:	8b 76 04             	mov    0x4(%esi),%esi
46af99:	e8 fe 24 00 00       	call   0x46d49c
46af9e:	89 70 14             	mov    %esi,0x14(%eax)
46afa1:	e8 a9 a7 01 00       	call   0x48574f
46afa6:	cc                   	int3
46afa7:	e8 f0 24 00 00       	call   0x46d49c
46afac:	83 c0 10             	add    $0x10,%eax
46afaf:	c3                   	ret
46afb0:	e8 e7 24 00 00       	call   0x46d49c
46afb5:	83 c0 14             	add    $0x14,%eax
46afb8:	c3                   	ret
46afb9:	cc                   	int3
46afba:	cc                   	int3
46afbb:	cc                   	int3
46afbc:	cc                   	int3
46afbd:	cc                   	int3
46afbe:	cc                   	int3
46afbf:	cc                   	int3
46afc0:	e9 8a a7 01 00       	jmp    0x48574f
46afc5:	cc                   	int3
46afc6:	cc                   	int3
46afc7:	cc                   	int3
46afc8:	cc                   	int3
46afc9:	cc                   	int3
46afca:	cc                   	int3
46afcb:	cc                   	int3
46afcc:	cc                   	int3
46afcd:	cc                   	int3
46afce:	cc                   	int3
46afcf:	cc                   	int3
46afd0:	55                   	push   %ebp
46afd1:	8b ec                	mov    %esp,%ebp
46afd3:	56                   	push   %esi
46afd4:	8b 75 08             	mov    0x8(%ebp),%esi
46afd7:	57                   	push   %edi
46afd8:	8b 7d 0c             	mov    0xc(%ebp),%edi
46afdb:	8b 06                	mov    (%esi),%eax
46afdd:	83 f8 fe             	cmp    $0xfffffffe,%eax
46afe0:	74 0d                	je     0x46afef
46afe2:	8b 4e 04             	mov    0x4(%esi),%ecx
46afe5:	03 cf                	add    %edi,%ecx
46afe7:	33 0c 38             	xor    (%eax,%edi,1),%ecx
46afea:	e8 db e9 ff ff       	call   0x4699ca
46afef:	8b 46 08             	mov    0x8(%esi),%eax
46aff2:	8b 4e 0c             	mov    0xc(%esi),%ecx
46aff5:	03 cf                	add    %edi,%ecx
46aff7:	33 0c 38             	xor    (%eax,%edi,1),%ecx
46affa:	5f                   	pop    %edi
46affb:	5e                   	pop    %esi
46affc:	5d                   	pop    %ebp
46affd:	e9 c8 e9 ff ff       	jmp    0x4699ca
46b002:	cc                   	int3
46b003:	cc                   	int3
46b004:	cc                   	int3
46b005:	cc                   	int3
46b006:	cc                   	int3
46b007:	cc                   	int3
46b008:	cc                   	int3
46b009:	cc                   	int3
46b00a:	cc                   	int3
46b00b:	cc                   	int3
46b00c:	cc                   	int3
46b00d:	cc                   	int3
46b00e:	cc                   	int3
46b00f:	cc                   	int3
46b010:	55                   	push   %ebp
46b011:	8b ec                	mov    %esp,%ebp
46b013:	83 ec 1c             	sub    $0x1c,%esp
46b016:	53                   	push   %ebx
46b017:	8b 5d 08             	mov    0x8(%ebp),%ebx
46b01a:	56                   	push   %esi
46b01b:	57                   	push   %edi
46b01c:	c6 45 ff 00          	movb   $0x0,-0x1(%ebp)
46b020:	ff 33                	push   (%ebx)
46b022:	c7 45 f4 01 00 00 00 	movl   $0x1,-0xc(%ebp)
46b029:	e8 17 b0 02 00       	call   0x496045
46b02e:	89 03                	mov    %eax,(%ebx)
46b030:	8b 5d 0c             	mov    0xc(%ebp),%ebx
46b033:	8b 43 08             	mov    0x8(%ebx),%eax
46b036:	8d 73 10             	lea    0x10(%ebx),%esi
46b039:	33 05 14 40 4c 00    	xor    0x4c4014,%eax
46b03f:	56                   	push   %esi
46b040:	50                   	push   %eax
46b041:	89 75 f0             	mov    %esi,-0x10(%ebp)
46b044:	89 45 f8             	mov    %eax,-0x8(%ebp)
46b047:	e8 84 ff ff ff       	call   0x46afd0
46b04c:	ff 75 10             	push   0x10(%ebp)
46b04f:	e8 f8 32 00 00       	call   0x46e34c
46b054:	8b 45 08             	mov    0x8(%ebp),%eax
46b057:	83 c4 10             	add    $0x10,%esp
46b05a:	8b 7b 0c             	mov    0xc(%ebx),%edi
46b05d:	f6 40 04 66          	testb  $0x66,0x4(%eax)
46b061:	75 5a                	jne    0x46b0bd
46b063:	89 45 e4             	mov    %eax,-0x1c(%ebp)
46b066:	8b 45 10             	mov    0x10(%ebp),%eax
46b069:	89 45 e8             	mov    %eax,-0x18(%ebp)
46b06c:	8d 45 e4             	lea    -0x1c(%ebp),%eax
46b06f:	89 43 fc             	mov    %eax,-0x4(%ebx)
46b072:	83 ff fe             	cmp    $0xfffffffe,%edi
46b075:	74 69                	je     0x46b0e0
46b077:	8b 4d f8             	mov    -0x8(%ebp),%ecx
46b07a:	8d 47 02             	lea    0x2(%edi),%eax
46b07d:	8d 04 47             	lea    (%edi,%eax,2),%eax
46b080:	8b 1c 81             	mov    (%ecx,%eax,4),%ebx
46b083:	8d 04 81             	lea    (%ecx,%eax,4),%eax
46b086:	8b 48 04             	mov    0x4(%eax),%ecx
46b089:	89 45 ec             	mov    %eax,-0x14(%ebp)
46b08c:	85 c9                	test   %ecx,%ecx
46b08e:	74 14                	je     0x46b0a4
46b090:	8b d6                	mov    %esi,%edx
46b092:	e8 d9 33 00 00       	call   0x46e470
46b097:	b1 01                	mov    $0x1,%cl
46b099:	88 4d ff             	mov    %cl,-0x1(%ebp)
46b09c:	85 c0                	test   %eax,%eax
46b09e:	78 14                	js     0x46b0b4
46b0a0:	7f 48                	jg     0x46b0ea
46b0a2:	eb 03                	jmp    0x46b0a7
46b0a4:	8a 4d ff             	mov    -0x1(%ebp),%cl
46b0a7:	8b fb                	mov    %ebx,%edi
46b0a9:	83 fb fe             	cmp    $0xfffffffe,%ebx
46b0ac:	75 c9                	jne    0x46b077
46b0ae:	84 c9                	test   %cl,%cl
46b0b0:	74 2e                	je     0x46b0e0
46b0b2:	eb 20                	jmp    0x46b0d4
46b0b4:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
46b0bb:	eb 17                	jmp    0x46b0d4
46b0bd:	83 ff fe             	cmp    $0xfffffffe,%edi
46b0c0:	74 1e                	je     0x46b0e0
46b0c2:	68 14 40 4c 00       	push   $0x4c4014
46b0c7:	56                   	push   %esi