45aa8c:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45aa92:	ff d6                	call   *%esi
45aa94:	83 c4 0c             	add    $0xc,%esp
45aa97:	84 c0                	test   %al,%al
45aa99:	75 1d                	jne    0x45aab8
45aa9b:	8d 47 04             	lea    0x4(%edi),%eax
45aa9e:	50                   	push   %eax
45aa9f:	68 7c 54 4c 00       	push   $0x4c547c
45aaa4:	e8 c5 06 01 00       	call   0x46b16e
45aaa9:	83 c4 08             	add    $0x8,%esp
45aaac:	85 c0                	test   %eax,%eax
45aaae:	75 1c                	jne    0x45aacc
45aab0:	8b 4d 10             	mov    0x10(%ebp),%ecx
45aab3:	8b 43 10             	mov    0x10(%ebx),%eax
45aab6:	89 01                	mov    %eax,(%ecx)
45aab8:	8b 4d f4             	mov    -0xc(%ebp),%ecx
45aabb:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
45aac2:	59                   	pop    %ecx
45aac3:	5f                   	pop    %edi
45aac4:	5e                   	pop    %esi
45aac5:	5b                   	pop    %ebx
45aac6:	8b e5                	mov    %ebp,%esp
45aac8:	5d                   	pop    %ebp
45aac9:	c2 0c 00             	ret    $0xc
45aacc:	ff 75 08             	push   0x8(%ebp)
45aacf:	8d 4d dc             	lea    -0x24(%ebp),%ecx
45aad2:	e8 69 05 fb ff       	call   0x40b040
45aad7:	57                   	push   %edi
45aad8:	68 78 54 4c 00       	push   $0x4c5478
45aadd:	8d 45 dc             	lea    -0x24(%ebp),%eax
45aae0:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
45aae7:	50                   	push   %eax
45aae8:	8d 4d ac             	lea    -0x54(%ebp),%ecx
45aaeb:	e8 00 15 fb ff       	call   0x40bff0
45aaf0:	68 a0 1e 4c 00       	push   $0x4c1ea0
45aaf5:	8d 45 ac             	lea    -0x54(%ebp),%eax
45aaf8:	50                   	push   %eax
45aaf9:	e8 b0 0a 01 00       	call   0x46b5ae
45aafe:	cc                   	int3
45aaff:	cc                   	int3
45ab00:	64 a1 2c 00 00 00    	mov    %fs:0x2c,%eax
45ab06:	56                   	push   %esi
45ab07:	57                   	push   %edi
45ab08:	8b f9                	mov    %ecx,%edi
45ab0a:	8b 10                	mov    (%eax),%edx
45ab0c:	a1 ec 9e 4c 00       	mov    0x4c9eec,%eax
45ab11:	3b 82 04 00 00 00    	cmp    0x4(%edx),%eax
45ab17:	7e 37                	jle    0x45ab50
45ab19:	68 ec 9e 4c 00       	push   $0x4c9eec
45ab1e:	e8 c7 f2 00 00       	call   0x469dea
45ab23:	83 c4 04             	add    $0x4,%esp
45ab26:	83 3d ec 9e 4c 00 ff 	cmpl   $0xffffffff,0x4c9eec
45ab2d:	75 21                	jne    0x45ab50
45ab2f:	68 c0 d4 49 00       	push   $0x49d4c0
45ab34:	c7 05 f0 9e 4c 00 1c 	movl   $0x4b631c,0x4c9ef0
45ab3b:	63 4b 00
45ab3e:	e8 3c f1 00 00       	call   0x469c7f
45ab43:	68 ec 9e 4c 00       	push   $0x4c9eec
45ab48:	e8 53 f2 00 00       	call   0x469da0
45ab4d:	83 c4 08             	add    $0x8,%esp
45ab50:	8b 07                	mov    (%edi),%eax
45ab52:	6a 00                	push   $0x0
45ab54:	68 f0 9e 4c 00       	push   $0x4c9ef0
45ab59:	8b 70 10             	mov    0x10(%eax),%esi
45ab5c:	8b ce                	mov    %esi,%ecx
45ab5e:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45ab64:	8b cf                	mov    %edi,%ecx
45ab66:	ff d6                	call   *%esi
45ab68:	5f                   	pop    %edi
45ab69:	5e                   	pop    %esi
45ab6a:	c3                   	ret
45ab6b:	cc                   	int3
45ab6c:	cc                   	int3
45ab6d:	cc                   	int3
45ab6e:	cc                   	int3
45ab6f:	cc                   	int3
45ab70:	53                   	push   %ebx
45ab71:	8b d9                	mov    %ecx,%ebx
45ab73:	55                   	push   %ebp
45ab74:	8b 6c 24 10          	mov    0x10(%esp),%ebp
45ab78:	56                   	push   %esi
45ab79:	8b 03                	mov    (%ebx),%eax
45ab7b:	57                   	push   %edi
45ab7c:	55                   	push   %ebp
45ab7d:	8b 70 2c             	mov    0x2c(%eax),%esi
45ab80:	8b ce                	mov    %esi,%ecx
45ab82:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45ab88:	8b cb                	mov    %ebx,%ecx
45ab8a:	ff d6                	call   *%esi
45ab8c:	8b 0b                	mov    (%ebx),%ecx
45ab8e:	8b f8                	mov    %eax,%edi
45ab90:	55                   	push   %ebp
45ab91:	8b 71 30             	mov    0x30(%ecx),%esi
45ab94:	8b ce                	mov    %esi,%ecx
45ab96:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45ab9c:	8b cb                	mov    %ebx,%ecx
45ab9e:	ff d6                	call   *%esi
45aba0:	03 c7                	add    %edi,%eax
45aba2:	03 44 24 14          	add    0x14(%esp),%eax
45aba6:	5f                   	pop    %edi
45aba7:	03 c5                	add    %ebp,%eax
45aba9:	5e                   	pop    %esi
45abaa:	5d                   	pop    %ebp
45abab:	5b                   	pop    %ebx
45abac:	8d 04 c5 09 00 00 00 	lea    0x9(,%eax,8),%eax
45abb3:	c2 08 00             	ret    $0x8
45abb6:	cc                   	int3
45abb7:	cc                   	int3
45abb8:	cc                   	int3
45abb9:	cc                   	int3
45abba:	cc                   	int3
45abbb:	cc                   	int3
45abbc:	cc                   	int3
45abbd:	cc                   	int3
45abbe:	cc                   	int3
45abbf:	cc                   	int3
45abc0:	56                   	push   %esi
45abc1:	57                   	push   %edi
45abc2:	8b f9                	mov    %ecx,%edi
45abc4:	8b 07                	mov    (%edi),%eax
45abc6:	8b 70 28             	mov    0x28(%eax),%esi
45abc9:	8b ce                	mov    %esi,%ecx
45abcb:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45abd1:	8b cf                	mov    %edi,%ecx
45abd3:	ff d6                	call   *%esi
45abd5:	84 c0                	test   %al,%al
45abd7:	74 32                	je     0x45ac0b
45abd9:	8b 07                	mov    (%edi),%eax
45abdb:	ff 74 24 14          	push   0x14(%esp)
45abdf:	ff 74 24 14          	push   0x14(%esp)
45abe3:	8b 70 04             	mov    0x4(%eax),%esi
45abe6:	8b ce                	mov    %esi,%ecx
45abe8:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45abee:	8b cf                	mov    %edi,%ecx
45abf0:	ff d6                	call   *%esi
45abf2:	8b 54 24 0c          	mov    0xc(%esp),%edx
45abf6:	8b f0                	mov    %eax,%esi
45abf8:	2b d6                	sub    %esi,%edx
45abfa:	33 c0                	xor    %eax,%eax
45abfc:	39 74 24 0c          	cmp    %esi,0xc(%esp)
45ac00:	5f                   	pop    %edi
45ac01:	0f 47 c2             	cmova  %edx,%eax
45ac04:	c1 e8 03             	shr    $0x3,%eax
45ac07:	5e                   	pop    %esi
45ac08:	c2 0c 00             	ret    $0xc
45ac0b:	5f                   	pop    %edi
45ac0c:	33 c0                	xor    %eax,%eax
45ac0e:	5e                   	pop    %esi
45ac0f:	c2 0c 00             	ret    $0xc
45ac12:	cc                   	int3
45ac13:	cc                   	int3
45ac14:	cc                   	int3
45ac15:	cc                   	int3
45ac16:	cc                   	int3
45ac17:	cc                   	int3
45ac18:	cc                   	int3
45ac19:	cc                   	int3
45ac1a:	cc                   	int3
45ac1b:	cc                   	int3
45ac1c:	cc                   	int3
45ac1d:	cc                   	int3
45ac1e:	cc                   	int3
45ac1f:	cc                   	int3
45ac20:	55                   	push   %ebp
45ac21:	8b ec                	mov    %esp,%ebp
45ac23:	6a ff                	push   $0xffffffff
45ac25:	68 c5 bf 49 00       	push   $0x49bfc5
45ac2a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
45ac30:	50                   	push   %eax
45ac31:	83 ec 54             	sub    $0x54,%esp
45ac34:	a1 14 40 4c 00       	mov    0x4c4014,%eax
45ac39:	33 c5                	xor    %ebp,%eax
45ac3b:	89 45 f0             	mov    %eax,-0x10(%ebp)
45ac3e:	53                   	push   %ebx
45ac3f:	56                   	push   %esi
45ac40:	57                   	push   %edi
45ac41:	50                   	push   %eax
45ac42:	8d 45 f4             	lea    -0xc(%ebp),%eax
45ac45:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
45ac4b:	89 4d cc             	mov    %ecx,-0x34(%ebp)
45ac4e:	8b 45 08             	mov    0x8(%ebp),%eax
45ac51:	8b 5d 14             	mov    0x14(%ebp),%ebx
45ac54:	8b 7d 24             	mov    0x24(%ebp),%edi
45ac57:	89 45 c0             	mov    %eax,-0x40(%ebp)
45ac5a:	8b 45 0c             	mov    0xc(%ebp),%eax
45ac5d:	89 45 bc             	mov    %eax,-0x44(%ebp)
45ac60:	8b 45 10             	mov    0x10(%ebp),%eax
45ac63:	89 45 d4             	mov    %eax,-0x2c(%ebp)
45ac66:	8b 45 1c             	mov    0x1c(%ebp),%eax
45ac69:	40                   	inc    %eax
45ac6a:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
45ac6d:	89 45 d0             	mov    %eax,-0x30(%ebp)
45ac70:	8b 45 28             	mov    0x28(%ebp),%eax
45ac73:	83 c0 07             	add    $0x7,%eax
45ac76:	89 7d c8             	mov    %edi,-0x38(%ebp)
45ac79:	c1 e8 03             	shr    $0x3,%eax
45ac7c:	89 45 e0             	mov    %eax,-0x20(%ebp)
45ac7f:	8b 03                	mov    (%ebx),%eax
45ac81:	8b 70 1c             	mov    0x1c(%eax),%esi
45ac84:	8b ce                	mov    %esi,%ecx
45ac86:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45ac8c:	8b cb                	mov    %ebx,%ecx
45ac8e:	ff d6                	call   *%esi
45ac90:	8b 4d cc             	mov    -0x34(%ebp),%ecx
45ac93:	8b d8                	mov    %eax,%ebx
45ac95:	53                   	push   %ebx
45ac96:	8b 09                	mov    (%ecx),%ecx
45ac98:	8b 71 2c             	mov    0x2c(%ecx),%esi
45ac9b:	8b ce                	mov    %esi,%ecx
45ac9d:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45aca3:	8b 4d cc             	mov    -0x34(%ebp),%ecx
45aca6:	ff d6                	call   *%esi
45aca8:	2b fb                	sub    %ebx,%edi
45acaa:	89 45 d8             	mov    %eax,-0x28(%ebp)
45acad:	2b 7d d0             	sub    -0x30(%ebp),%edi
45acb0:	03 7d e0             	add    -0x20(%ebp),%edi
45acb3:	89 7d b8             	mov    %edi,-0x48(%ebp)
45acb6:	89 5d b0             	mov    %ebx,-0x50(%ebp)
45acb9:	85 db                	test   %ebx,%ebx
45acbb:	75 04                	jne    0x45acc1
45acbd:	33 f6                	xor    %esi,%esi
45acbf:	eb 0c                	jmp    0x45accd
45acc1:	8b cb                	mov    %ebx,%ecx
45acc3:	e8 98 13 00 00       	call   0x45c060
45acc8:	8b f0                	mov    %eax,%esi
45acca:	8b 45 d8             	mov    -0x28(%ebp),%eax
45accd:	89 75 c4             	mov    %esi,-0x3c(%ebp)
45acd0:	89 75 b4             	mov    %esi,-0x4c(%ebp)
45acd3:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
45acda:	89 45 a4             	mov    %eax,-0x5c(%ebp)
45acdd:	85 c0                	test   %eax,%eax
45acdf:	74 07                	je     0x45ace8
45ace1:	8b c8                	mov    %eax,%ecx
45ace3:	e8 78 13 00 00       	call   0x45c060
45ace8:	89 45 dc             	mov    %eax,-0x24(%ebp)
45aceb:	89 45 a8             	mov    %eax,-0x58(%ebp)
45acee:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
45acf1:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
45acf5:	56                   	push   %esi
45acf6:	8b 09                	mov    (%ecx),%ecx
45acf8:	8b 71 14             	mov    0x14(%ecx),%esi
45acfb:	8b ce                	mov    %esi,%ecx
45acfd:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45ad03:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
45ad06:	ff d6                	call   *%esi
45ad08:	8b 4d c0             	mov    -0x40(%ebp),%ecx
45ad0b:	ff 75 d8             	push   -0x28(%ebp)
45ad0e:	ff 75 dc             	push   -0x24(%ebp)
45ad11:	8b 01                	mov    (%ecx),%eax
45ad13:	8b 70 20             	mov    0x20(%eax),%esi
45ad16:	8b ce                	mov    %esi,%ecx
45ad18:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45ad1e:	8b 4d c0             	mov    -0x40(%ebp),%ecx
45ad21:	ff d6                	call   *%esi
45ad23:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
45ad26:	8b c1                	mov    %ecx,%eax
45ad28:	c1 e8 1d             	shr    $0x1d,%eax
45ad2b:	0f c8                	bswap  %eax
45ad2d:	89 45 e8             	mov    %eax,-0x18(%ebp)
45ad30:	8d 04 cd 00 00 00 00 	lea    0x0(,%ecx,8),%eax
45ad37:	0f c8                	bswap  %eax
45ad39:	89 45 ec             	mov    %eax,-0x14(%ebp)
45ad3c:	8d 4d e8             	lea    -0x18(%ebp),%ecx
45ad3f:	8b 45 e4             	mov    -0x1c(%ebp),%eax
45ad42:	6a 08                	push   $0x8
45ad44:	51                   	push   %ecx
45ad45:	8b 00                	mov    (%eax),%eax
45ad47:	8b 70 0c             	mov    0xc(%eax),%esi
45ad4a:	8b ce                	mov    %esi,%ecx
45ad4c:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45ad52:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
45ad55:	ff d6                	call   *%esi
45ad57:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
45ad5a:	8b 01                	mov    (%ecx),%eax
45ad5c:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
45ad5f:	51                   	push   %ecx
45ad60:	ff 75 bc             	push   -0x44(%ebp)
45ad63:	8b 70 0c             	mov    0xc(%eax),%esi
45ad66:	8b ce                	mov    %esi,%ecx
45ad68:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45ad6e:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
45ad71:	ff d6                	call   *%esi
45ad73:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
45ad76:	53                   	push   %ebx
45ad77:	ff 75 c4             	push   -0x3c(%ebp)
45ad7a:	8b 01                	mov    (%ecx),%eax
45ad7c:	8b 70 0c             	mov    0xc(%eax),%esi
45ad7f:	8b ce                	mov    %esi,%ecx
45ad81:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45ad87:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
45ad8a:	ff d6                	call   *%esi
45ad8c:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
45ad8f:	ff 75 d8             	push   -0x28(%ebp)
45ad92:	ff 75 dc             	push   -0x24(%ebp)
45ad95:	8b 01                	mov    (%ecx),%eax
45ad97:	8b 70 0c             	mov    0xc(%eax),%esi
45ad9a:	8b ce                	mov    %esi,%ecx
45ad9c:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45ada2:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
45ada5:	ff d6                	call   *%esi
45ada7:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
45adaa:	57                   	push   %edi
45adab:	8b 01                	mov    (%ecx),%eax
45adad:	8b 70 14             	mov    0x14(%eax),%esi
45adb0:	8b ce                	mov    %esi,%ecx
45adb2:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45adb8:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
45adbb:	ff d6                	call   *%esi
45adbd:	8b 7d cc             	mov    -0x34(%ebp),%edi
45adc0:	8b 07                	mov    (%edi),%eax
45adc2:	8b 70 34             	mov    0x34(%eax),%esi
45adc5:	8b ce                	mov    %esi,%ecx
45adc7:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45adcd:	8b cf                	mov    %edi,%ecx
45adcf:	ff d6                	call   *%esi
45add1:	8b 4d e0             	mov    -0x20(%ebp),%ecx
45add4:	8b f8                	mov    %eax,%edi
45add6:	6a 00                	push   $0x0
45add8:	53                   	push   %ebx
45add9:	ff 75 b8             	push   -0x48(%ebp)
45addc:	8b 37                	mov    (%edi),%esi
45adde:	2b cb                	sub    %ebx,%ecx
45ade0:	2b 4d d0             	sub    -0x30(%ebp),%ecx
45ade3:	51                   	push   %ecx
45ade4:	ff 75 c8             	push   -0x38(%ebp)
45ade7:	8b 76 04             	mov    0x4(%esi),%esi
45adea:	8b ce                	mov    %esi,%ecx
45adec:	ff 75 e4             	push   -0x1c(%ebp)
45adef:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45adf5:	8b cf                	mov    %edi,%ecx
45adf7:	ff d6                	call   *%esi
45adf9:	8b 55 d4             	mov    -0x2c(%ebp),%edx
45adfc:	8b 75 c8             	mov    -0x38(%ebp),%esi
45adff:	8b 7d d8             	mov    -0x28(%ebp),%edi
45ae02:	2b f2                	sub    %edx,%esi
45ae04:	2b f7                	sub    %edi,%esi
45ae06:	2b f3                	sub    %ebx,%esi
45ae08:	2b 75 d0             	sub    -0x30(%ebp),%esi
45ae0b:	03 75 e0             	add    -0x20(%ebp),%esi
45ae0e:	52                   	push   %edx
45ae0f:	8b 55 bc             	mov    -0x44(%ebp),%edx
45ae12:	8b ce                	mov    %esi,%ecx
45ae14:	80 76 ff 01          	xorb   $0x1,-0x1(%esi)
45ae18:	e8 f3 0b 00 00       	call   0x45ba10
45ae1d:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
45ae20:	8b 55 dc             	mov    -0x24(%ebp),%edx
45ae23:	03 ce                	add    %esi,%ecx
45ae25:	57                   	push   %edi
45ae26:	e8 e5 0b 00 00       	call   0x45ba10
45ae2b:	8b 7d c8             	mov    -0x38(%ebp),%edi