45bcc3:	89 47 04             	mov    %eax,0x4(%edi)
45bcc6:	5f                   	pop    %edi
45bcc7:	5e                   	pop    %esi
45bcc8:	5b                   	pop    %ebx
45bcc9:	8b e5                	mov    %ebp,%esp
45bccb:	5d                   	pop    %ebp
45bccc:	c3                   	ret
45bccd:	55                   	push   %ebp
45bcce:	8b ec                	mov    %esp,%ebp
45bcd0:	51                   	push   %ecx
45bcd1:	51                   	push   %ecx
45bcd2:	53                   	push   %ebx
45bcd3:	56                   	push   %esi
45bcd4:	8b f1                	mov    %ecx,%esi
45bcd6:	33 db                	xor    %ebx,%ebx
45bcd8:	89 5d f8             	mov    %ebx,-0x8(%ebp)
45bcdb:	89 5d fc             	mov    %ebx,-0x4(%ebp)
45bcde:	8b 56 0c             	mov    0xc(%esi),%edx
45bce1:	85 d2                	test   %edx,%edx
45bce3:	0f 84 d2 00 00 00    	je     0x45bdbb
45bce9:	8b 0a                	mov    (%edx),%ecx
45bceb:	8d 46 10             	lea    0x10(%esi),%eax
45bcee:	50                   	push   %eax
45bcef:	8b 06                	mov    (%esi),%eax
45bcf1:	ff 70 14             	push   0x14(%eax)
45bcf4:	6a ff                	push   $0xffffffff
45bcf6:	ff 76 28             	push   0x28(%esi)
45bcf9:	53                   	push   %ebx
45bcfa:	6a fd                	push   $0xfffffffd
45bcfc:	52                   	push   %edx
45bcfd:	ff 51 2c             	call   *0x2c(%ecx)
45bd00:	38 5e 3d             	cmp    %bl,0x3d(%esi)
45bd03:	75 05                	jne    0x45bd0a
45bd05:	38 5e 3c             	cmp    %bl,0x3c(%esi)
45bd08:	74 31                	je     0x45bd3b
45bd0a:	8b 46 0c             	mov    0xc(%esi),%eax
45bd0d:	8d 55 f8             	lea    -0x8(%ebp),%edx
45bd10:	52                   	push   %edx
45bd11:	68 1c 2d 49 00       	push   $0x492d1c
45bd16:	50                   	push   %eax
45bd17:	8b 08                	mov    (%eax),%ecx
45bd19:	ff 11                	call   *(%ecx)
45bd1b:	8b 4d f8             	mov    -0x8(%ebp),%ecx
45bd1e:	85 c9                	test   %ecx,%ecx
45bd20:	74 19                	je     0x45bd3b
45bd22:	38 5e 3d             	cmp    %bl,0x3d(%esi)
45bd25:	74 09                	je     0x45bd30
45bd27:	8b 01                	mov    (%ecx),%eax
45bd29:	51                   	push   %ecx
45bd2a:	ff 50 18             	call   *0x18(%eax)
45bd2d:	8b 4d f8             	mov    -0x8(%ebp),%ecx
45bd30:	38 5e 3c             	cmp    %bl,0x3c(%esi)
45bd33:	74 06                	je     0x45bd3b
45bd35:	8b 01                	mov    (%ecx),%eax
45bd37:	51                   	push   %ecx
45bd38:	ff 50 14             	call   *0x14(%eax)
45bd3b:	53                   	push   %ebx
45bd3c:	ff 76 0c             	push   0xc(%esi)
45bd3f:	ff 15 44 f8 48 00    	call   *0x48f844
45bd45:	8b 46 0c             	mov    0xc(%esi),%eax
45bd48:	8d 55 fc             	lea    -0x4(%ebp),%edx
45bd4b:	52                   	push   %edx
45bd4c:	68 3c 2d 49 00       	push   $0x492d3c
45bd51:	50                   	push   %eax
45bd52:	8b 08                	mov    (%eax),%ecx
45bd54:	ff 11                	call   *(%ecx)
45bd56:	8b 4d fc             	mov    -0x4(%ebp),%ecx
45bd59:	85 c9                	test   %ecx,%ecx
45bd5b:	74 17                	je     0x45bd74
45bd5d:	8b 01                	mov    (%ecx),%eax
45bd5f:	53                   	push   %ebx
45bd60:	6a 02                	push   $0x2
45bd62:	6a 01                	push   $0x1
45bd64:	51                   	push   %ecx
45bd65:	ff 50 1c             	call   *0x1c(%eax)
45bd68:	8b 45 fc             	mov    -0x4(%ebp),%eax
45bd6b:	50                   	push   %eax
45bd6c:	8b 08                	mov    (%eax),%ecx
45bd6e:	ff 51 08             	call   *0x8(%ecx)
45bd71:	89 5d fc             	mov    %ebx,-0x4(%ebp)
45bd74:	8b 46 0c             	mov    0xc(%esi),%eax
45bd77:	ff 76 38             	push   0x38(%esi)
45bd7a:	50                   	push   %eax
45bd7b:	8b 08                	mov    (%eax),%ecx
45bd7d:	ff 51 50             	call   *0x50(%ecx)
45bd80:	8b 46 0c             	mov    0xc(%esi),%eax
45bd83:	53                   	push   %ebx
45bd84:	50                   	push   %eax
45bd85:	8b 08                	mov    (%eax),%ecx
45bd87:	ff 51 0c             	call   *0xc(%ecx)
45bd8a:	8b 46 0c             	mov    0xc(%esi),%eax
45bd8d:	53                   	push   %ebx
45bd8e:	68 10 f9 48 00       	push   $0x48f910
45bd93:	50                   	push   %eax
45bd94:	8b 08                	mov    (%eax),%ecx
45bd96:	ff 51 14             	call   *0x14(%ecx)
45bd99:	ff 76 08             	push   0x8(%esi)
45bd9c:	ff 15 48 f6 48 00    	call   *0x48f648
45bda2:	85 c0                	test   %eax,%eax
45bda4:	74 09                	je     0x45bdaf
45bda6:	ff 76 08             	push   0x8(%esi)
45bda9:	ff 15 3c f6 48 00    	call   *0x48f63c
45bdaf:	8b 46 0c             	mov    0xc(%esi),%eax
45bdb2:	50                   	push   %eax
45bdb3:	8b 08                	mov    (%eax),%ecx
45bdb5:	ff 51 08             	call   *0x8(%ecx)
45bdb8:	89 5e 0c             	mov    %ebx,0xc(%esi)
45bdbb:	89 5e 08             	mov    %ebx,0x8(%esi)
45bdbe:	88 5e 3c             	mov    %bl,0x3c(%esi)
45bdc1:	39 5e 34             	cmp    %ebx,0x34(%esi)
45bdc4:	74 0c                	je     0x45bdd2
45bdc6:	ff 76 34             	push   0x34(%esi)
45bdc9:	e8 9e 52 fc ff       	call   0x42106c
45bdce:	59                   	pop    %ecx
45bdcf:	89 5e 34             	mov    %ebx,0x34(%esi)
45bdd2:	8b 4e 2c             	mov    0x2c(%esi),%ecx
45bdd5:	85 c9                	test   %ecx,%ecx
45bdd7:	74 09                	je     0x45bde2
45bdd9:	51                   	push   %ecx
45bdda:	e8 50 fd ff ff       	call   0x45bb2f
45bddf:	89 5e 2c             	mov    %ebx,0x2c(%esi)
45bde2:	39 5e 30             	cmp    %ebx,0x30(%esi)
45bde5:	74 0c                	je     0x45bdf3
45bde7:	ff 76 30             	push   0x30(%esi)
45bdea:	e8 7d 52 fc ff       	call   0x42106c
45bdef:	59                   	pop    %ecx
45bdf0:	89 5e 30             	mov    %ebx,0x30(%esi)
45bdf3:	39 5e 28             	cmp    %ebx,0x28(%esi)
45bdf6:	74 0c                	je     0x45be04
45bdf8:	ff 76 28             	push   0x28(%esi)
45bdfb:	e8 6c 52 fc ff       	call   0x42106c
45be00:	59                   	pop    %ecx
45be01:	89 5e 28             	mov    %ebx,0x28(%esi)
45be04:	5e                   	pop    %esi
45be05:	5b                   	pop    %ebx
45be06:	8b e5                	mov    %ebp,%esp
45be08:	5d                   	pop    %ebp
45be09:	c3                   	ret
45be0a:	55                   	push   %ebp
45be0b:	8b ec                	mov    %esp,%ebp
45be0d:	8b 4d 10             	mov    0x10(%ebp),%ecx
45be10:	33 d2                	xor    %edx,%edx
45be12:	83 f9 03             	cmp    $0x3,%ecx
45be15:	7c 3e                	jl     0x45be55
45be17:	8b 45 0c             	mov    0xc(%ebp),%eax
45be1a:	53                   	push   %ebx
45be1b:	8b 5d 08             	mov    0x8(%ebp),%ebx
45be1e:	56                   	push   %esi
45be1f:	8b 70 04             	mov    0x4(%eax),%esi
45be22:	57                   	push   %edi
45be23:	83 c6 0c             	add    $0xc,%esi
45be26:	8d 79 fe             	lea    -0x2(%ecx),%edi
45be29:	8b 06                	mov    (%esi),%eax
45be2b:	8b 08                	mov    (%eax),%ecx
45be2d:	85 c9                	test   %ecx,%ecx
45be2f:	74 1b                	je     0x45be4c
45be31:	8b 41 04             	mov    0x4(%ecx),%eax
45be34:	3b 43 04             	cmp    0x4(%ebx),%eax
45be37:	75 13                	jne    0x45be4c
45be39:	80 b9 90 00 00 00 1d 	cmpb   $0x1d,0x90(%ecx)
45be40:	75 0a                	jne    0x45be4c
45be42:	83 b9 80 00 00 00 00 	cmpl   $0x0,0x80(%ecx)
45be49:	74 01                	je     0x45be4c
45be4b:	42                   	inc    %edx
45be4c:	83 c6 04             	add    $0x4,%esi
45be4f:	4f                   	dec    %edi
45be50:	75 d7                	jne    0x45be29
45be52:	5f                   	pop    %edi
45be53:	5e                   	pop    %esi
45be54:	5b                   	pop    %ebx
45be55:	8b c2                	mov    %edx,%eax
45be57:	5d                   	pop    %ebp
45be58:	c2 0c 00             	ret    $0xc
45be5b:	55                   	push   %ebp
45be5c:	8b ec                	mov    %esp,%ebp
45be5e:	56                   	push   %esi
45be5f:	8b 75 08             	mov    0x8(%ebp),%esi
45be62:	85 f6                	test   %esi,%esi
45be64:	74 17                	je     0x45be7d
45be66:	8b 8e 80 00 00 00    	mov    0x80(%esi),%ecx
45be6c:	85 c9                	test   %ecx,%ecx
45be6e:	74 0d                	je     0x45be7d
45be70:	51                   	push   %ecx
45be71:	e8 a4 fc ff ff       	call   0x45bb1a
45be76:	83 a6 80 00 00 00 00 	andl   $0x0,0x80(%esi)
45be7d:	5e                   	pop    %esi
45be7e:	5d                   	pop    %ebp
45be7f:	c2 04 00             	ret    $0x4
45be82:	55                   	push   %ebp
45be83:	8b ec                	mov    %esp,%ebp
45be85:	83 ec 10             	sub    $0x10,%esp
45be88:	8d 45 f0             	lea    -0x10(%ebp),%eax
45be8b:	50                   	push   %eax
45be8c:	8b 45 08             	mov    0x8(%ebp),%eax
45be8f:	ff 70 08             	push   0x8(%eax)
45be92:	ff 15 34 f6 48 00    	call   *0x48f634
45be98:	8d 45 f0             	lea    -0x10(%ebp),%eax
45be9b:	50                   	push   %eax
45be9c:	ff 75 0c             	push   0xc(%ebp)
45be9f:	ff 15 20 f6 48 00    	call   *0x48f620
45bea5:	33 c0                	xor    %eax,%eax
45bea7:	8b e5                	mov    %ebp,%esp
45bea9:	5d                   	pop    %ebp
45beaa:	c2 08 00             	ret    $0x8
45bead:	55                   	push   %ebp
45beae:	8b ec                	mov    %esp,%ebp
45beb0:	8b 45 08             	mov    0x8(%ebp),%eax
45beb3:	8b 40 08             	mov    0x8(%eax),%eax
45beb6:	8b 08                	mov    (%eax),%ecx
45beb8:	85 c9                	test   %ecx,%ecx
45beba:	74 07                	je     0x45bec3
45bebc:	8b 45 0c             	mov    0xc(%ebp),%eax
45bebf:	8b 09                	mov    (%ecx),%ecx
45bec1:	89 08                	mov    %ecx,(%eax)
45bec3:	33 c0                	xor    %eax,%eax
45bec5:	5d                   	pop    %ebp
45bec6:	c2 08 00             	ret    $0x8
45bec9:	55                   	push   %ebp
45beca:	8b ec                	mov    %esp,%ebp
45becc:	8b 4d 0c             	mov    0xc(%ebp),%ecx
45becf:	85 c9                	test   %ecx,%ecx
45bed1:	74 13                	je     0x45bee6
45bed3:	8b 45 08             	mov    0x8(%ebp),%eax
45bed6:	8b 40 04             	mov    0x4(%eax),%eax
45bed9:	85 c0                	test   %eax,%eax
45bedb:	74 09                	je     0x45bee6
45bedd:	8b 40 04             	mov    0x4(%eax),%eax
45bee0:	89 01                	mov    %eax,(%ecx)
45bee2:	33 c0                	xor    %eax,%eax
45bee4:	eb 05                	jmp    0x45beeb
45bee6:	b8 03 40 00 80       	mov    $0x80004003,%eax
45beeb:	5d                   	pop    %ebp
45beec:	c2 08 00             	ret    $0x8
45beef:	55                   	push   %ebp
45bef0:	8b ec                	mov    %esp,%ebp
45bef2:	8b 4d 0c             	mov    0xc(%ebp),%ecx
45bef5:	85 c9                	test   %ecx,%ecx
45bef7:	74 15                	je     0x45bf0e
45bef9:	8b 45 08             	mov    0x8(%ebp),%eax
45befc:	8b 40 04             	mov    0x4(%eax),%eax
45beff:	8b 00                	mov    (%eax),%eax
45bf01:	85 c0                	test   %eax,%eax
45bf03:	74 09                	je     0x45bf0e
45bf05:	8b 40 14             	mov    0x14(%eax),%eax
45bf08:	89 01                	mov    %eax,(%ecx)
45bf0a:	33 c0                	xor    %eax,%eax
45bf0c:	eb 03                	jmp    0x45bf11
45bf0e:	33 c0                	xor    %eax,%eax
45bf10:	40                   	inc    %eax
45bf11:	5d                   	pop    %ebp
45bf12:	c2 08 00             	ret    $0x8
45bf15:	55                   	push   %ebp
45bf16:	8b ec                	mov    %esp,%ebp
45bf18:	8b 45 10             	mov    0x10(%ebp),%eax
45bf1b:	53                   	push   %ebx
45bf1c:	57                   	push   %edi
45bf1d:	8b 7d 08             	mov    0x8(%ebp),%edi
45bf20:	33 db                	xor    %ebx,%ebx
45bf22:	89 18                	mov    %ebx,(%eax)
45bf24:	8b 47 04             	mov    0x4(%edi),%eax
45bf27:	8b 00                	mov    (%eax),%eax
45bf29:	8b 48 0c             	mov    0xc(%eax),%ecx
45bf2c:	8b 45 0c             	mov    0xc(%ebp),%eax
45bf2f:	89 08                	mov    %ecx,(%eax)
45bf31:	8b 47 04             	mov    0x4(%edi),%eax
45bf34:	83 c0 10             	add    $0x10,%eax
45bf37:	50                   	push   %eax
45bf38:	ff 75 14             	push   0x14(%ebp)
45bf3b:	ff 15 20 f6 48 00    	call   *0x48f620
45bf41:	8b 47 04             	mov    0x4(%edi),%eax
45bf44:	83 c0 10             	add    $0x10,%eax
45bf47:	50                   	push   %eax
45bf48:	ff 75 18             	push   0x18(%ebp)
45bf4b:	ff 15 20 f6 48 00    	call   *0x48f620
45bf51:	8b 4d 1c             	mov    0x1c(%ebp),%ecx
45bf54:	89 59 04             	mov    %ebx,0x4(%ecx)
45bf57:	c7 01 14 00 00 00    	movl   $0x14,(%ecx)
45bf5d:	8b 47 04             	mov    0x4(%edi),%eax
45bf60:	5f                   	pop    %edi
45bf61:	8b 00                	mov    (%eax),%eax
45bf63:	8b 40 14             	mov    0x14(%eax),%eax
45bf66:	89 41 08             	mov    %eax,0x8(%ecx)
45bf69:	33 c0                	xor    %eax,%eax
45bf6b:	89 59 0c             	mov    %ebx,0xc(%ecx)
45bf6e:	89 59 10             	mov    %ebx,0x10(%ecx)
45bf71:	5b                   	pop    %ebx
45bf72:	5d                   	pop    %ebp
45bf73:	c2 18 00             	ret    $0x18
45bf76:	55                   	push   %ebp
45bf77:	8b ec                	mov    %esp,%ebp
45bf79:	56                   	push   %esi
45bf7a:	8b 75 08             	mov    0x8(%ebp),%esi
45bf7d:	8b c1                	mov    %ecx,%eax
45bf7f:	85 f6                	test   %esi,%esi
45bf81:	74 4d                	je     0x45bfd0
45bf83:	80 be 90 00 00 00 1d 	cmpb   $0x1d,0x90(%esi)
45bf8a:	75 44                	jne    0x45bfd0
45bf8c:	8b b6 80 00 00 00    	mov    0x80(%esi),%esi
45bf92:	85 f6                	test   %esi,%esi
45bf94:	74 79                	je     0x45c00f
45bf96:	8b 48 10             	mov    0x10(%eax),%ecx
45bf99:	85 c9                	test   %ecx,%ecx
45bf9b:	74 06                	je     0x45bfa3
45bf9d:	80 7e 3c 00          	cmpb   $0x0,0x3c(%esi)
45bfa1:	75 6c                	jne    0x45c00f
45bfa3:	80 78 18 00          	cmpb   $0x0,0x18(%eax)
45bfa7:	75 66                	jne    0x45c00f
45bfa9:	85 c9                	test   %ecx,%ecx
45bfab:	74 08                	je     0x45bfb5
45bfad:	8b 01                	mov    (%ecx),%eax
45bfaf:	6a 00                	push   $0x0
45bfb1:	51                   	push   %ecx
45bfb2:	ff 50 1c             	call   *0x1c(%eax)
45bfb5:	8b 4e 0c             	mov    0xc(%esi),%ecx
45bfb8:	8d 46 10             	lea    0x10(%esi),%eax
45bfbb:	50                   	push   %eax
45bfbc:	ff 76 08             	push   0x8(%esi)
45bfbf:	8b 11                	mov    (%ecx),%edx
45bfc1:	6a ff                	push   $0xffffffff
45bfc3:	ff 76 28             	push   0x28(%esi)
45bfc6:	6a 00                	push   $0x0
45bfc8:	6a ff                	push   $0xffffffff
45bfca:	51                   	push   %ecx
45bfcb:	ff 52 2c             	call   *0x2c(%edx)
45bfce:	eb 3f                	jmp    0x45c00f
45bfd0:	8b 48 10             	mov    0x10(%eax),%ecx
45bfd3:	85 c9                	test   %ecx,%ecx
45bfd5:	74 38                	je     0x45c00f
45bfd7:	80 78 18 00          	cmpb   $0x0,0x18(%eax)
45bfdb:	75 2a                	jne    0x45c007
45bfdd:	83 65 08 00          	andl   $0x0,0x8(%ebp)
45bfe1:	8d 55 08             	lea    0x8(%ebp),%edx
45bfe4:	8b 01                	mov    (%ecx),%eax
45bfe6:	52                   	push   %edx
45bfe7:	68 1c 2d 49 00       	push   $0x492d1c
45bfec:	51                   	push   %ecx
45bfed:	ff 10                	call   *(%eax)
45bfef:	8b 4d 08             	mov    0x8(%ebp),%ecx
45bff2:	85 c9                	test   %ecx,%ecx
45bff4:	74 19                	je     0x45c00f
45bff6:	8b 01                	mov    (%ecx),%eax
45bff8:	51                   	push   %ecx
45bff9:	ff 50 18             	call   *0x18(%eax)
45bffc:	8b 45 08             	mov    0x8(%ebp),%eax
45bfff:	50                   	push   %eax
45c000:	8b 08                	mov    (%eax),%ecx
45c002:	ff 51 08             	call   *0x8(%ecx)
45c005:	eb 08                	jmp    0x45c00f
45c007:	8b 01                	mov    (%ecx),%eax
45c009:	6a 00                	push   $0x0