45b954:	53                   	push   %ebx
45b955:	56                   	push   %esi
45b956:	8b d9                	mov    %ecx,%ebx
45b958:	33 f6                	xor    %esi,%esi
45b95a:	57                   	push   %edi
45b95b:	89 b3 88 00 00 00    	mov    %esi,0x88(%ebx)
45b961:	e8 e5 f5 ff ff       	call   0x45af4b
45b966:	8d bb 84 00 00 00    	lea    0x84(%ebx),%edi
45b96c:	8b 0f                	mov    (%edi),%ecx
45b96e:	e8 ac 31 ff ff       	call   0x44eb1f
45b973:	a8 01                	test   $0x1,%al
45b975:	74 08                	je     0x45b97f
45b977:	8b 0f                	mov    (%edi),%ecx
45b979:	56                   	push   %esi
45b97a:	e8 d6 31 ff ff       	call   0x44eb55
45b97f:	8d 45 e8             	lea    -0x18(%ebp),%eax
45b982:	50                   	push   %eax
45b983:	8b 43 68             	mov    0x68(%ebx),%eax
45b986:	ff 70 1c             	push   0x1c(%eax)
45b989:	ff 15 40 07 4b 00    	call   *0x4b0740
45b98f:	8b 45 0c             	mov    0xc(%ebp),%eax
45b992:	8b 4b 68             	mov    0x68(%ebx),%ecx
45b995:	89 43 04             	mov    %eax,0x4(%ebx)
45b998:	8b 45 10             	mov    0x10(%ebp),%eax
45b99b:	89 43 08             	mov    %eax,0x8(%ebx)
45b99e:	8b 45 08             	mov    0x8(%ebp),%eax
45b9a1:	6a 06                	push   $0x6
45b9a3:	56                   	push   %esi
45b9a4:	8d 55 f8             	lea    -0x8(%ebp),%edx
45b9a7:	89 83 8c 00 00 00    	mov    %eax,0x8c(%ebx)
45b9ad:	8b 01                	mov    (%ecx),%eax
45b9af:	52                   	push   %edx
45b9b0:	ff 90 34 01 00 00    	call   *0x134(%eax)
45b9b6:	ff 75 fc             	push   -0x4(%ebp)
45b9b9:	8d 4d d8             	lea    -0x28(%ebp),%ecx
45b9bc:	ff 75 f8             	push   -0x8(%ebp)
45b9bf:	ff 75 ec             	push   -0x14(%ebp)
45b9c2:	ff 75 e8             	push   -0x18(%ebp)
45b9c5:	e8 75 2a fb ff       	call   0x40e43f
45b9ca:	ff 75 fc             	push   -0x4(%ebp)
45b9cd:	8b f0                	mov    %eax,%esi
45b9cf:	ff 75 f8             	push   -0x8(%ebp)
45b9d2:	8d 7b 28             	lea    0x28(%ebx),%edi
45b9d5:	ff 75 ec             	push   -0x14(%ebp)
45b9d8:	a5                   	movsl  %ds:(%esi),%es:(%edi)
45b9d9:	ff 75 e8             	push   -0x18(%ebp)
45b9dc:	a5                   	movsl  %ds:(%esi),%es:(%edi)
45b9dd:	a5                   	movsl  %ds:(%esi),%es:(%edi)
45b9de:	8d 4d d8             	lea    -0x28(%ebp),%ecx
45b9e1:	a5                   	movsl  %ds:(%esi),%es:(%edi)
45b9e2:	e8 58 2a fb ff       	call   0x40e43f
45b9e7:	ff 75 fc             	push   -0x4(%ebp)
45b9ea:	8b f0                	mov    %eax,%esi
45b9ec:	ff 75 f8             	push   -0x8(%ebp)
45b9ef:	8d 7b 38             	lea    0x38(%ebx),%edi
45b9f2:	ff 75 ec             	push   -0x14(%ebp)
45b9f5:	a5                   	movsl  %ds:(%esi),%es:(%edi)
45b9f6:	ff 75 e8             	push   -0x18(%ebp)
45b9f9:	a5                   	movsl  %ds:(%esi),%es:(%edi)
45b9fa:	a5                   	movsl  %ds:(%esi),%es:(%edi)
45b9fb:	8d 4d d8             	lea    -0x28(%ebp),%ecx
45b9fe:	a5                   	movsl  %ds:(%esi),%es:(%edi)
45b9ff:	e8 3b 2a fb ff       	call   0x40e43f
45ba04:	8d 4b 48             	lea    0x48(%ebx),%ecx
45ba07:	8b f0                	mov    %eax,%esi
45ba09:	8b f9                	mov    %ecx,%edi
45ba0b:	a5                   	movsl  %ds:(%esi),%es:(%edi)
45ba0c:	a5                   	movsl  %ds:(%esi),%es:(%edi)
45ba0d:	6a 00                	push   $0x0
45ba0f:	a5                   	movsl  %ds:(%esi),%es:(%edi)
45ba10:	68 00 00 c4 00       	push   $0xc40000
45ba15:	51                   	push   %ecx
45ba16:	a5                   	movsl  %ds:(%esi),%es:(%edi)
45ba17:	e8 00 91 00 00       	call   0x464b1c
45ba1c:	a1 ec c3 4a 00       	mov    0x4ac3ec,%eax
45ba21:	f7 d8                	neg    %eax
45ba23:	50                   	push   %eax
45ba24:	a1 e8 c3 4a 00       	mov    0x4ac3e8,%eax
45ba29:	f7 d8                	neg    %eax
45ba2b:	50                   	push   %eax
45ba2c:	8d 73 48             	lea    0x48(%ebx),%esi
45ba2f:	56                   	push   %esi
45ba30:	ff 15 88 06 4b 00    	call   *0x4b0688
45ba36:	8b 43 40             	mov    0x40(%ebx),%eax
45ba39:	2b 43 38             	sub    0x38(%ebx),%eax
45ba3c:	8b 4b 44             	mov    0x44(%ebx),%ecx
45ba3f:	2b 4b 3c             	sub    0x3c(%ebx),%ecx
45ba42:	8b d0                	mov    %eax,%edx
45ba44:	8b 46 08             	mov    0x8(%esi),%eax
45ba47:	2b 06                	sub    (%esi),%eax
45ba49:	8b f9                	mov    %ecx,%edi
45ba4b:	8b 4e 0c             	mov    0xc(%esi),%ecx
45ba4e:	2b 4e 04             	sub    0x4(%esi),%ecx
45ba51:	2b c2                	sub    %edx,%eax
45ba53:	2b cf                	sub    %edi,%ecx
45ba55:	33 d2                	xor    %edx,%edx
45ba57:	51                   	push   %ecx
45ba58:	50                   	push   %eax
45ba59:	33 f6                	xor    %esi,%esi
45ba5b:	56                   	push   %esi
45ba5c:	52                   	push   %edx
45ba5d:	8d 4d d8             	lea    -0x28(%ebp),%ecx
45ba60:	e8 da 29 fb ff       	call   0x40e43f
45ba65:	ff 75 10             	push   0x10(%ebp)
45ba68:	8b f0                	mov    %eax,%esi
45ba6a:	ff 75 0c             	push   0xc(%ebp)
45ba6d:	8d 7b 58             	lea    0x58(%ebx),%edi
45ba70:	a5                   	movsl  %ds:(%esi),%es:(%edi)
45ba71:	a5                   	movsl  %ds:(%esi),%es:(%edi)
45ba72:	a5                   	movsl  %ds:(%esi),%es:(%edi)
45ba73:	a5                   	movsl  %ds:(%esi),%es:(%edi)
45ba74:	83 63 74 00          	andl   $0x0,0x74(%ebx)
45ba78:	8b cb                	mov    %ebx,%ecx
45ba7a:	e8 94 f7 ff ff       	call   0x45b213
45ba7f:	8b cb                	mov    %ebx,%ecx
45ba81:	e8 76 fa ff ff       	call   0x45b4fc
45ba86:	5f                   	pop    %edi
45ba87:	5e                   	pop    %esi
45ba88:	5b                   	pop    %ebx
45ba89:	c9                   	leave
45ba8a:	c2 0c 00             	ret    $0xc
45ba8d:	b8 08 11 49 00       	mov    $0x491108,%eax
45ba92:	c3                   	ret
45ba93:	33 c0                	xor    %eax,%eax
45ba95:	40                   	inc    %eax
45ba96:	c3                   	ret
45ba97:	e9 11 e8 ff ff       	jmp    0x45a2ad
45ba9c:	c2 04 00             	ret    $0x4
45ba9f:	b8 d3 43 48 00       	mov    $0x4843d3,%eax
45baa4:	e8 d3 c1 fb ff       	call   0x417c7c
45baa9:	83 ec 58             	sub    $0x58,%esp
45baac:	a1 40 8b 4a 00       	mov    0x4a8b40,%eax
45bab1:	56                   	push   %esi
45bab2:	8b f1                	mov    %ecx,%esi
45bab4:	56                   	push   %esi
45bab5:	8d 4d 9c             	lea    -0x64(%ebp),%ecx
45bab8:	89 45 f0             	mov    %eax,-0x10(%ebp)
45babb:	e8 78 3a ff ff       	call   0x44f538
45bac0:	8b 06                	mov    (%esi),%eax
45bac2:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
45bac6:	8b ce                	mov    %esi,%ecx
45bac8:	ff 90 50 01 00 00    	call   *0x150(%eax)
45bace:	85 c0                	test   %eax,%eax
45bad0:	74 1c                	je     0x45baee
45bad2:	8b 06                	mov    (%esi),%eax
45bad4:	8b ce                	mov    %esi,%ecx
45bad6:	ff 90 68 01 00 00    	call   *0x168(%eax)
45badc:	85 c0                	test   %eax,%eax
45bade:	74 0e                	je     0x45baee
45bae0:	8b 06                	mov    (%esi),%eax
45bae2:	8d 4d 9c             	lea    -0x64(%ebp),%ecx
45bae5:	51                   	push   %ecx
45bae6:	8b ce                	mov    %esi,%ecx
45bae8:	ff 90 40 01 00 00    	call   *0x140(%eax)
45baee:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
45baf2:	8d 4d 9c             	lea    -0x64(%ebp),%ecx
45baf5:	e8 99 3a ff ff       	call   0x44f593
45bafa:	8b 4d f4             	mov    -0xc(%ebp),%ecx
45bafd:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
45bb04:	8b 4d f0             	mov    -0x10(%ebp),%ecx
45bb07:	5e                   	pop    %esi
45bb08:	e8 d1 c0 fb ff       	call   0x417bde
45bb0d:	c9                   	leave
45bb0e:	c3                   	ret
45bb0f:	56                   	push   %esi
45bb10:	8b f1                	mov    %ecx,%esi
45bb12:	57                   	push   %edi
45bb13:	8b 7e 7c             	mov    0x7c(%esi),%edi
45bb16:	ff 74 24 0c          	push   0xc(%esp)
45bb1a:	8b c7                	mov    %edi,%eax
45bb1c:	25 ff f0 ff ff       	and    $0xfffff0ff,%eax
45bb21:	89 46 7c             	mov    %eax,0x7c(%esi)
45bb24:	e8 09 e6 ff ff       	call   0x45a132
45bb29:	89 7e 7c             	mov    %edi,0x7c(%esi)
45bb2c:	5f                   	pop    %edi
45bb2d:	5e                   	pop    %esi
45bb2e:	c2 04 00             	ret    $0x4
45bb31:	c2 08 00             	ret    $0x8
45bb34:	b8 e7 43 48 00       	mov    $0x4843e7,%eax
45bb39:	e8 3e c1 fb ff       	call   0x417c7c
45bb3e:	8b 45 08             	mov    0x8(%ebp),%eax
45bb41:	56                   	push   %esi
45bb42:	8b f1                	mov    %ecx,%esi
45bb44:	83 be 8c 00 00 00 00 	cmpl   $0x0,0x8c(%esi)
45bb4b:	89 86 80 00 00 00    	mov    %eax,0x80(%esi)
45bb51:	75 28                	jne    0x45bb7b
45bb53:	68 b0 00 00 00       	push   $0xb0
45bb58:	e8 f8 44 fe ff       	call   0x440055
45bb5d:	59                   	pop    %ecx
45bb5e:	8b c8                	mov    %eax,%ecx
45bb60:	89 4d 08             	mov    %ecx,0x8(%ebp)
45bb63:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
45bb67:	85 c9                	test   %ecx,%ecx
45bb69:	74 08                	je     0x45bb73
45bb6b:	56                   	push   %esi
45bb6c:	e8 90 f2 ff ff       	call   0x45ae01
45bb71:	eb 02                	jmp    0x45bb75
45bb73:	33 c0                	xor    %eax,%eax
45bb75:	89 86 8c 00 00 00    	mov    %eax,0x8c(%esi)
45bb7b:	83 7e 34 00          	cmpl   $0x0,0x34(%esi)
45bb7f:	75 0c                	jne    0x45bb8d
45bb81:	ff 76 1c             	push   0x1c(%esi)
45bb84:	ff 15 d8 07 4b 00    	call   *0x4b07d8
45bb8a:	89 46 34             	mov    %eax,0x34(%esi)
45bb8d:	8b 4d f4             	mov    -0xc(%ebp),%ecx
45bb90:	5e                   	pop    %esi
45bb91:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
45bb98:	c9                   	leave
45bb99:	c2 04 00             	ret    $0x4
45bb9c:	b8 88 10 49 00       	mov    $0x491088,%eax
45bba1:	c3                   	ret
45bba2:	55                   	push   %ebp
45bba3:	8b ec                	mov    %esp,%ebp
45bba5:	81 ec 08 01 00 00    	sub    $0x108,%esp
45bbab:	a1 40 8b 4a 00       	mov    0x4a8b40,%eax
45bbb0:	56                   	push   %esi
45bbb1:	8b f1                	mov    %ecx,%esi
45bbb3:	83 be c4 00 00 00 00 	cmpl   $0x0,0xc4(%esi)
45bbba:	89 45 fc             	mov    %eax,-0x4(%ebp)
45bbbd:	75 2e                	jne    0x45bbed
45bbbf:	ff 75 08             	push   0x8(%ebp)
45bbc2:	e8 80 60 00 00       	call   0x461c47
45bbc7:	68 04 01 00 00       	push   $0x104
45bbcc:	8d 85 f8 fe ff ff    	lea    -0x108(%ebp),%eax
45bbd2:	50                   	push   %eax
45bbd3:	8d 8e e0 00 00 00    	lea    0xe0(%esi),%ecx
45bbd9:	e8 ec 57 fe ff       	call   0x4413ca
45bbde:	8d 85 f8 fe ff ff    	lea    -0x108(%ebp),%eax
45bbe4:	50                   	push   %eax
45bbe5:	ff 76 1c             	push   0x1c(%esi)
45bbe8:	e8 46 56 ff ff       	call   0x451233
45bbed:	8b 4d fc             	mov    -0x4(%ebp),%ecx
45bbf0:	5e                   	pop    %esi
45bbf1:	e8 e8 bf fb ff       	call   0x417bde
45bbf6:	c9                   	leave
45bbf7:	c2 04 00             	ret    $0x4
45bbfa:	b8 07 44 48 00       	mov    $0x484407,%eax
45bbff:	e8 78 c0 fb ff       	call   0x417c7c
45bc04:	51                   	push   %ecx
45bc05:	53                   	push   %ebx
45bc06:	56                   	push   %esi
45bc07:	8b f1                	mov    %ecx,%esi
45bc09:	57                   	push   %edi
45bc0a:	89 75 f0             	mov    %esi,-0x10(%ebp)
45bc0d:	e8 4e 4a 01 00       	call   0x470660
45bc12:	8d be 94 00 00 00    	lea    0x94(%esi),%edi
45bc18:	33 db                	xor    %ebx,%ebx
45bc1a:	8b cf                	mov    %edi,%ecx
45bc1c:	89 5d fc             	mov    %ebx,-0x4(%ebp)
45bc1f:	c7 06 a4 11 49 00    	movl   $0x4911a4,(%esi)
45bc25:	e8 26 13 fe ff       	call   0x43cf50
45bc2a:	8b 45 08             	mov    0x8(%ebp),%eax
45bc2d:	53                   	push   %ebx
45bc2e:	89 86 90 00 00 00    	mov    %eax,0x90(%esi)
45bc34:	c7 46 54 01 00 00 00 	movl   $0x1,0x54(%esi)
45bc3b:	ff 77 08             	push   0x8(%edi)
45bc3e:	8b cf                	mov    %edi,%ecx
45bc40:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
45bc44:	e8 fa 11 fe ff       	call   0x43ce43
45bc49:	8d 86 ac 00 00 00    	lea    0xac(%esi),%eax
45bc4f:	50                   	push   %eax
45bc50:	89 9e a8 00 00 00    	mov    %ebx,0xa8(%esi)
45bc56:	ff 15 3c 08 4b 00    	call   *0x4b083c
45bc5c:	8b 4d f4             	mov    -0xc(%ebp),%ecx
45bc5f:	89 5e 60             	mov    %ebx,0x60(%esi)
45bc62:	89 5e 64             	mov    %ebx,0x64(%esi)
45bc65:	89 5e 5c             	mov    %ebx,0x5c(%esi)
45bc68:	89 5e 58             	mov    %ebx,0x58(%esi)
45bc6b:	5f                   	pop    %edi
45bc6c:	8b c6                	mov    %esi,%eax
45bc6e:	5e                   	pop    %esi
45bc6f:	5b                   	pop    %ebx
45bc70:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
45bc77:	c9                   	leave
45bc78:	c2 04 00             	ret    $0x4
45bc7b:	55                   	push   %ebp
45bc7c:	8b ec                	mov    %esp,%ebp
45bc7e:	83 ec 10             	sub    $0x10,%esp
45bc81:	8b 45 0c             	mov    0xc(%ebp),%eax
45bc84:	56                   	push   %esi
45bc85:	8b f1                	mov    %ecx,%esi
45bc87:	25 ff ff 40 00       	and    $0x40ffff,%eax
45bc8c:	6a 02                	push   $0x2
45bc8e:	89 46 7c             	mov    %eax,0x7c(%esi)
45bc91:	e8 65 8c fe ff       	call   0x4448fb
45bc96:	8d 45 f0             	lea    -0x10(%ebp),%eax
45bc99:	50                   	push   %eax
45bc9a:	ff 15 3c 08 4b 00    	call   *0x4b083c
45bca0:	6a 00                	push   $0x0
45bca2:	ff 75 10             	push   0x10(%ebp)
45bca5:	8d 45 f0             	lea    -0x10(%ebp),%eax
45bca8:	ff 75 08             	push   0x8(%ebp)
45bcab:	8b ce                	mov    %esi,%ecx
45bcad:	50                   	push   %eax
45bcae:	ff 75 0c             	push   0xc(%ebp)
45bcb1:	6a 00                	push   $0x0
45bcb3:	68 68 af 48 00       	push   $0x48af68
45bcb8:	e8 2b 82 fe ff       	call   0x443ee8
45bcbd:	5e                   	pop    %esi
45bcbe:	c9                   	leave
45bcbf:	c2 0c 00             	ret    $0xc
45bcc2:	55                   	push   %ebp
45bcc3:	8b ec                	mov    %esp,%ebp
45bcc5:	83 ec 18             	sub    $0x18,%esp
45bcc8:	53                   	push   %ebx
45bcc9:	8b d9                	mov    %ecx,%ebx
45bccb:	8b 83 a8 00 00 00    	mov    0xa8(%ebx),%eax
45bcd1:	56                   	push   %esi
45bcd2:	57                   	push   %edi
45bcd3:	89 45 fc             	mov    %eax,-0x4(%ebp)
45bcd6:	8d 83 ac 00 00 00    	lea    0xac(%ebx),%eax
45bcdc:	8b f0                	mov    %eax,%esi
45bcde:	8d 7d e8             	lea    -0x18(%ebp),%edi
45bce1:	a5                   	movsl  %ds:(%esi),%es:(%edi)
45bce2:	a5                   	movsl  %ds:(%esi),%es:(%edi)
45bce3:	a5                   	movsl  %ds:(%esi),%es:(%edi)
45bce4:	33 c9                	xor    %ecx,%ecx
45bce6:	a5                   	movsl  %ds:(%esi),%es:(%edi)
45bce7:	8b 75 0c             	mov    0xc(%ebp),%esi
45bcea:	39 0e                	cmp    %ecx,(%esi)
45bcec:	89 45 f8             	mov    %eax,-0x8(%ebp)
45bcef:	0f 94 c1             	sete   %cl
45bcf2:	89 8b a8 00 00 00    	mov    %ecx,0xa8(%ebx)
45bcf8:	8d 4e 04             	lea    0x4(%esi),%ecx
45bcfb:	51                   	push   %ecx
45bcfc:	50                   	push   %eax
45bcfd:	ff 15 44 07 4b 00    	call   *0x4b0744
45bd03:	56                   	push   %esi
45bd04:	ff 75 08             	push   0x8(%ebp)
45bd07:	8b cb                	mov    %ebx,%ecx
45bd09:	e8 4e e7 ff ff       	call   0x45a45c
45bd0e:	8b 7d f8             	mov    -0x8(%ebp),%edi
45bd11:	8b 4d fc             	mov    -0x4(%ebp),%ecx
45bd14:	8d 75 e8             	lea    -0x18(%ebp),%esi
45bd17:	a5                   	movsl  %ds:(%esi),%es:(%edi)
45bd18:	a5                   	movsl  %ds:(%esi),%es:(%edi)
45bd19:	a5                   	movsl  %ds:(%esi),%es:(%edi)
45bd1a:	a5                   	movsl  %ds:(%esi),%es:(%edi)
45bd1b:	5f                   	pop    %edi
45bd1c:	5e                   	pop    %esi
45bd1d:	89 8b a8 00 00 00    	mov    %ecx,0xa8(%ebx)
45bd23:	5b                   	pop    %ebx
45bd24:	c9                   	leave
45bd25:	c2 08 00             	ret    $0x8
45bd28:	55                   	push   %ebp
45bd29:	8b ec                	mov    %esp,%ebp
45bd2b:	83 ec 10             	sub    $0x10,%esp
45bd2e:	56                   	push   %esi
45bd2f:	8d 45 f0             	lea    -0x10(%ebp),%eax
45bd32:	50                   	push   %eax