54eb7b:	5b                   	pop    %ebx
54eb7c:	8b e5                	mov    %ebp,%esp
54eb7e:	5d                   	pop    %ebp
54eb7f:	c3                   	ret
54eb80:	55                   	push   %ebp
54eb81:	8b ec                	mov    %esp,%ebp
54eb83:	56                   	push   %esi
54eb84:	8b 75 08             	mov    0x8(%ebp),%esi
54eb87:	83 46 0c ff          	addl   $0xffffffff,0xc(%esi)
54eb8b:	8b 06                	mov    (%esi),%eax
54eb8d:	89 45 08             	mov    %eax,0x8(%ebp)
54eb90:	75 47                	jne    0x54ebd9
54eb92:	53                   	push   %ebx
54eb93:	8b 5e 08             	mov    0x8(%esi),%ebx
54eb96:	57                   	push   %edi
54eb97:	8b 7e 04             	mov    0x4(%esi),%edi
54eb9a:	83 47 08 ff          	addl   $0xffffffff,0x8(%edi)
54eb9e:	75 1c                	jne    0x54ebbc
54eba0:	8b 4f 10             	mov    0x10(%edi),%ecx
54eba3:	85 c9                	test   %ecx,%ecx
54eba5:	74 0b                	je     0x54ebb2
54eba7:	ff 77 0c             	push   0xc(%edi)
54ebaa:	ff d1                	call   *%ecx
54ebac:	8b 45 08             	mov    0x8(%ebp),%eax
54ebaf:	83 c4 04             	add    $0x4,%esp
54ebb2:	57                   	push   %edi
54ebb3:	50                   	push   %eax
54ebb4:	e8 b7 27 fd ff       	call   0x521370
54ebb9:	83 c4 08             	add    $0x8,%esp
54ebbc:	85 db                	test   %ebx,%ebx
54ebbe:	74 0b                	je     0x54ebcb
54ebc0:	8b 03                	mov    (%ebx),%eax
54ebc2:	53                   	push   %ebx
54ebc3:	8b 40 10             	mov    0x10(%eax),%eax
54ebc6:	ff d0                	call   *%eax
54ebc8:	83 c4 04             	add    $0x4,%esp
54ebcb:	56                   	push   %esi
54ebcc:	ff 75 08             	push   0x8(%ebp)
54ebcf:	e8 9c 27 fd ff       	call   0x521370
54ebd4:	83 c4 08             	add    $0x8,%esp
54ebd7:	5f                   	pop    %edi
54ebd8:	5b                   	pop    %ebx
54ebd9:	5e                   	pop    %esi
54ebda:	5d                   	pop    %ebp
54ebdb:	c3                   	ret
54ebdc:	cc                   	int3
54ebdd:	cc                   	int3
54ebde:	cc                   	int3
54ebdf:	cc                   	int3
54ebe0:	55                   	push   %ebp
54ebe1:	8b ec                	mov    %esp,%ebp
54ebe3:	51                   	push   %ecx
54ebe4:	8b 4d 08             	mov    0x8(%ebp),%ecx
54ebe7:	56                   	push   %esi
54ebe8:	8b b1 80 01 00 00    	mov    0x180(%ecx),%esi
54ebee:	85 f6                	test   %esi,%esi
54ebf0:	0f 84 99 00 00 00    	je     0x54ec8f
54ebf6:	c7 81 80 01 00 00 00 	movl   $0x0,0x180(%ecx)
54ebfd:	00 00 00
54ec00:	8b 49 04             	mov    0x4(%ecx),%ecx
54ec03:	85 c9                	test   %ecx,%ecx
54ec05:	74 22                	je     0x54ec29
54ec07:	66 0f 1f 84 00 00 00 	nopw   0x0(%eax,%eax,1)
54ec0e:	00 00
54ec10:	8b 81 98 00 00 00    	mov    0x98(%ecx),%eax
54ec16:	83 e0 fd             	and    $0xfffffffd,%eax
54ec19:	83 c8 01             	or     $0x1,%eax
54ec1c:	89 81 98 00 00 00    	mov    %eax,0x98(%ecx)
54ec22:	8b 49 08             	mov    0x8(%ecx),%ecx
54ec25:	85 c9                	test   %ecx,%ecx
54ec27:	75 e7                	jne    0x54ec10
54ec29:	53                   	push   %ebx
54ec2a:	57                   	push   %edi
54ec2b:	0f 1f 44 00 00       	nopl   0x0(%eax,%eax,1)
54ec30:	83 46 0c ff          	addl   $0xffffffff,0xc(%esi)
54ec34:	8b 06                	mov    (%esi),%eax
54ec36:	8b 5e 18             	mov    0x18(%esi),%ebx
54ec39:	89 45 08             	mov    %eax,0x8(%ebp)
54ec3c:	75 49                	jne    0x54ec87
54ec3e:	8b 7e 04             	mov    0x4(%esi),%edi
54ec41:	8b 4e 08             	mov    0x8(%esi),%ecx
54ec44:	89 4d fc             	mov    %ecx,-0x4(%ebp)
54ec47:	83 47 08 ff          	addl   $0xffffffff,0x8(%edi)
54ec4b:	75 1f                	jne    0x54ec6c
54ec4d:	8b 4f 10             	mov    0x10(%edi),%ecx
54ec50:	85 c9                	test   %ecx,%ecx
54ec52:	74 0b                	je     0x54ec5f
54ec54:	ff 77 0c             	push   0xc(%edi)
54ec57:	ff d1                	call   *%ecx
54ec59:	8b 45 08             	mov    0x8(%ebp),%eax
54ec5c:	83 c4 04             	add    $0x4,%esp
54ec5f:	57                   	push   %edi
54ec60:	50                   	push   %eax
54ec61:	e8 0a 27 fd ff       	call   0x521370
54ec66:	8b 4d fc             	mov    -0x4(%ebp),%ecx
54ec69:	83 c4 08             	add    $0x8,%esp
54ec6c:	85 c9                	test   %ecx,%ecx
54ec6e:	74 0b                	je     0x54ec7b
54ec70:	8b 01                	mov    (%ecx),%eax
54ec72:	51                   	push   %ecx
54ec73:	8b 40 10             	mov    0x10(%eax),%eax
54ec76:	ff d0                	call   *%eax
54ec78:	83 c4 04             	add    $0x4,%esp
54ec7b:	56                   	push   %esi
54ec7c:	ff 75 08             	push   0x8(%ebp)
54ec7f:	e8 ec 26 fd ff       	call   0x521370
54ec84:	83 c4 08             	add    $0x8,%esp
54ec87:	8b f3                	mov    %ebx,%esi
54ec89:	85 db                	test   %ebx,%ebx
54ec8b:	75 a3                	jne    0x54ec30
54ec8d:	5f                   	pop    %edi
54ec8e:	5b                   	pop    %ebx
54ec8f:	5e                   	pop    %esi
54ec90:	8b e5                	mov    %ebp,%esp
54ec92:	5d                   	pop    %ebp
54ec93:	c3                   	ret
54ec94:	cc                   	int3
54ec95:	cc                   	int3
54ec96:	cc                   	int3
54ec97:	cc                   	int3
54ec98:	cc                   	int3
54ec99:	cc                   	int3
54ec9a:	cc                   	int3
54ec9b:	cc                   	int3
54ec9c:	cc                   	int3
54ec9d:	cc                   	int3
54ec9e:	cc                   	int3
54ec9f:	cc                   	int3
54eca0:	55                   	push   %ebp
54eca1:	8b ec                	mov    %esp,%ebp
54eca3:	83 ec 14             	sub    $0x14,%esp
54eca6:	33 d2                	xor    %edx,%edx
54eca8:	53                   	push   %ebx
54eca9:	8b 5d 0c             	mov    0xc(%ebp),%ebx
54ecac:	56                   	push   %esi
54ecad:	57                   	push   %edi
54ecae:	8b 7d 08             	mov    0x8(%ebp),%edi
54ecb1:	42                   	inc    %edx
54ecb2:	33 f6                	xor    %esi,%esi
54ecb4:	89 55 f8             	mov    %edx,-0x8(%ebp)
54ecb7:	83 fa 05             	cmp    $0x5,%edx
54ecba:	7e 26                	jle    0x54ece2
54ecbc:	8d 4e 01             	lea    0x1(%esi),%ecx
54ecbf:	83 fa 64             	cmp    $0x64,%edx
54ecc2:	0f 8f 01 03 00 00    	jg     0x54efc9
54ecc8:	83 fa 0a             	cmp    $0xa,%edx
54eccb:	7c 09                	jl     0x54ecd6
54eccd:	8d 42 f7             	lea    -0x9(%edx),%eax
54ecd0:	0f af c0             	imul   %eax,%eax
54ecd3:	6b c8 27             	imul   $0x27,%eax,%ecx
54ecd6:	8b 07                	mov    (%edi),%eax
54ecd8:	51                   	push   %ecx
54ecd9:	50                   	push   %eax
54ecda:	8b 40 3c             	mov    0x3c(%eax),%eax
54ecdd:	ff d0                	call   *%eax
54ecdf:	83 c4 08             	add    $0x8,%esp
54ece2:	80 7f 32 00          	cmpb   $0x0,0x32(%edi)
54ece6:	0f 85 80 00 00 00    	jne    0x54ed6c
54ecec:	53                   	push   %ebx
54eced:	57                   	push   %edi
54ecee:	e8 ad fd 00 00       	call   0x55eaa0
54ecf3:	8b f0                	mov    %eax,%esi
54ecf5:	83 c4 08             	add    $0x8,%esp
54ecf8:	83 fe 05             	cmp    $0x5,%esi
54ecfb:	75 61                	jne    0x54ed5e
54ecfd:	8b 47 20             	mov    0x20(%edi),%eax
54ed00:	83 38 00             	cmpl   $0x0,(%eax)
54ed03:	75 08                	jne    0x54ed0d
54ed05:	83 ce ff             	or     $0xffffffff,%esi
54ed08:	e9 26 02 00 00       	jmp    0x54ef33
54ed0d:	80 7f 2b 00          	cmpb   $0x0,0x2b(%edi)
54ed11:	75 43                	jne    0x54ed56
54ed13:	8b 47 04             	mov    0x4(%edi),%eax
54ed16:	6a 06                	push   $0x6
54ed18:	6a 01                	push   $0x1
54ed1a:	6a 02                	push   $0x2
54ed1c:	8b 08                	mov    (%eax),%ecx
54ed1e:	50                   	push   %eax
54ed1f:	8b 41 38             	mov    0x38(%ecx),%eax
54ed22:	ff d0                	call   *%eax
54ed24:	8b f0                	mov    %eax,%esi
54ed26:	83 c4 10             	add    $0x10,%esp
54ed29:	85 f6                	test   %esi,%esi
54ed2b:	74 0f                	je     0x54ed3c
54ed2d:	83 fe 05             	cmp    $0x5,%esi
54ed30:	75 2c                	jne    0x54ed5e
54ed32:	be 05 01 00 00       	mov    $0x105,%esi
54ed37:	e9 f7 01 00 00       	jmp    0x54ef33
54ed3c:	80 7f 2b 00          	cmpb   $0x0,0x2b(%edi)
54ed40:	75 14                	jne    0x54ed56
54ed42:	8b 47 04             	mov    0x4(%edi),%eax
54ed45:	6a 05                	push   $0x5
54ed47:	6a 01                	push   $0x1
54ed49:	6a 02                	push   $0x2
54ed4b:	8b 08                	mov    (%eax),%ecx
54ed4d:	50                   	push   %eax
54ed4e:	8b 41 38             	mov    0x38(%ecx),%eax
54ed51:	ff d0                	call   *%eax
54ed53:	83 c4 10             	add    $0x10,%esp
54ed56:	83 ce ff             	or     $0xffffffff,%esi
54ed59:	e9 d5 01 00 00       	jmp    0x54ef33
54ed5e:	85 f6                	test   %esi,%esi
54ed60:	0f 85 cd 01 00 00    	jne    0x54ef33
54ed66:	80 7f 32 00          	cmpb   $0x0,0x32(%edi)
54ed6a:	74 11                	je     0x54ed7d
54ed6c:	53                   	push   %ebx
54ed6d:	57                   	push   %edi
54ed6e:	e8 dd ef 00 00       	call   0x55dd50
54ed73:	83 c4 08             	add    $0x8,%esp
54ed76:	8b f0                	mov    %eax,%esi
54ed78:	e9 b6 01 00 00       	jmp    0x54ef33
54ed7d:	8b 47 20             	mov    0x20(%edi),%eax
54ed80:	8b 00                	mov    (%eax),%eax
54ed82:	83 c0 60             	add    $0x60,%eax
54ed85:	89 45 ec             	mov    %eax,-0x14(%ebp)
54ed88:	8b 00                	mov    (%eax),%eax
54ed8a:	3b 47 44             	cmp    0x44(%edi),%eax
54ed8d:	0f 85 95 00 00 00    	jne    0x54ee28
54ed93:	80 7f 2b 00          	cmpb   $0x0,0x2b(%edi)
54ed97:	74 04                	je     0x54ed9d
54ed99:	33 f6                	xor    %esi,%esi
54ed9b:	eb 16                	jmp    0x54edb3
54ed9d:	8b 47 04             	mov    0x4(%edi),%eax
54eda0:	6a 06                	push   $0x6
54eda2:	6a 01                	push   $0x1
54eda4:	6a 03                	push   $0x3
54eda6:	8b 08                	mov    (%eax),%ecx
54eda8:	50                   	push   %eax
54eda9:	8b 41 38             	mov    0x38(%ecx),%eax
54edac:	ff d0                	call   *%eax
54edae:	83 c4 10             	add    $0x10,%esp
54edb1:	8b f0                	mov    %eax,%esi
54edb3:	80 7f 2b 02          	cmpb   $0x2,0x2b(%edi)
54edb7:	74 0e                	je     0x54edc7
54edb9:	8b 47 04             	mov    0x4(%edi),%eax
54edbc:	50                   	push   %eax
54edbd:	8b 08                	mov    (%eax),%ecx
54edbf:	8b 41 3c             	mov    0x3c(%ecx),%eax
54edc2:	ff d0                	call   *%eax
54edc4:	83 c4 04             	add    $0x4,%esp
54edc7:	85 f6                	test   %esi,%esi
54edc9:	75 54                	jne    0x54ee1f
54edcb:	8b 47 20             	mov    0x20(%edi),%eax
54edce:	8d 57 34             	lea    0x34(%edi),%edx
54edd1:	be 2c 00 00 00       	mov    $0x2c,%esi
54edd6:	8b 08                	mov    (%eax),%ecx
54edd8:	8b 01                	mov    (%ecx),%eax
54edda:	3b 02                	cmp    (%edx),%eax
54eddc:	75 18                	jne    0x54edf6
54edde:	83 c1 04             	add    $0x4,%ecx
54ede1:	83 c2 04             	add    $0x4,%edx
54ede4:	83 ee 04             	sub    $0x4,%esi
54ede7:	73 ef                	jae    0x54edd8
54ede9:	33 c0                	xor    %eax,%eax
54edeb:	66 89 47 28          	mov    %ax,0x28(%edi)
54edef:	5f                   	pop    %edi
54edf0:	5e                   	pop    %esi
54edf1:	5b                   	pop    %ebx
54edf2:	8b e5                	mov    %ebp,%esp
54edf4:	5d                   	pop    %ebp
54edf5:	c3                   	ret
54edf6:	80 7f 2b 00          	cmpb   $0x0,0x2b(%edi)
54edfa:	8b 55 f8             	mov    -0x8(%ebp),%edx
54edfd:	0f 85 ae fe ff ff    	jne    0x54ecb1
54ee03:	8b 47 04             	mov    0x4(%edi),%eax
54ee06:	6a 05                	push   $0x5
54ee08:	6a 01                	push   $0x1
54ee0a:	6a 03                	push   $0x3
54ee0c:	8b 08                	mov    (%eax),%ecx
54ee0e:	50                   	push   %eax
54ee0f:	8b 41 38             	mov    0x38(%ecx),%eax
54ee12:	ff d0                	call   *%eax
54ee14:	8b 55 f8             	mov    -0x8(%ebp),%edx
54ee17:	83 c4 10             	add    $0x10,%esp
54ee1a:	e9 92 fe ff ff       	jmp    0x54ecb1
54ee1f:	83 fe 05             	cmp    $0x5,%esi
54ee22:	0f 85 0b 01 00 00    	jne    0x54ef33
54ee28:	8b 55 ec             	mov    -0x14(%ebp),%edx
54ee2b:	33 c0                	xor    %eax,%eax
54ee2d:	33 db                	xor    %ebx,%ebx
54ee2f:	89 45 fc             	mov    %eax,-0x4(%ebp)
54ee32:	8b 47 44             	mov    0x44(%edi),%eax
54ee35:	83 c2 08             	add    $0x8,%edx
54ee38:	89 45 f4             	mov    %eax,-0xc(%ebp)
54ee3b:	8d 43 01             	lea    0x1(%ebx),%eax
54ee3e:	66 90                	xchg   %ax,%ax
54ee40:	8b 0a                	mov    (%edx),%ecx
54ee42:	3b d9                	cmp    %ecx,%ebx
54ee44:	77 0e                	ja     0x54ee54
54ee46:	3b 4d f4             	cmp    -0xc(%ebp),%ecx
54ee49:	77 09                	ja     0x54ee54
54ee4b:	8b d9                	mov    %ecx,%ebx
54ee4d:	8b c8                	mov    %eax,%ecx
54ee4f:	89 4d fc             	mov    %ecx,-0x4(%ebp)
54ee52:	eb 03                	jmp    0x54ee57
54ee54:	8b 4d fc             	mov    -0x4(%ebp),%ecx
54ee57:	40                   	inc    %eax
54ee58:	83 c2 04             	add    $0x4,%edx
54ee5b:	83 f8 05             	cmp    $0x5,%eax
54ee5e:	7c e0                	jl     0x54ee40
54ee60:	f6 47 2e 02          	testb  $0x2,0x2e(%edi)
54ee64:	89 5d f0             	mov    %ebx,-0x10(%ebp)
54ee67:	0f 85 78 00 00 00    	jne    0x54eee5
54ee6d:	3b 5d f4             	cmp    -0xc(%ebp),%ebx
54ee70:	72 08                	jb     0x54ee7a
54ee72:	85 c9                	test   %ecx,%ecx
54ee74:	0f 85 86 00 00 00    	jne    0x54ef00
54ee7a:	bb 01 00 00 00       	mov    $0x1,%ebx
54ee7f:	90                   	nop
54ee80:	80 7f 2b 00          	cmpb   $0x0,0x2b(%edi)
54ee84:	75 2c                	jne    0x54eeb2
54ee86:	8b 4f 04             	mov    0x4(%edi),%ecx
54ee89:	8d 43 03             	lea    0x3(%ebx),%eax
54ee8c:	6a 0a                	push   $0xa
54ee8e:	6a 01                	push   $0x1
54ee90:	50                   	push   %eax
54ee91:	8b 11                	mov    (%ecx),%edx
54ee93:	51                   	push   %ecx
54ee94:	8b 42 38             	mov    0x38(%edx),%eax
54ee97:	ff d0                	call   *%eax
54ee99:	8b f0                	mov    %eax,%esi
54ee9b:	83 c4 10             	add    $0x10,%esp
54ee9e:	85 f6                	test   %esi,%esi
54eea0:	74 12                	je     0x54eeb4
54eea2:	83 fe 05             	cmp    $0x5,%esi
54eea5:	0f 85 85 00 00 00    	jne    0x54ef30
54eeab:	43                   	inc    %ebx
54eeac:	3b d8                	cmp    %eax,%ebx
54eeae:	7c d0                	jl     0x54ee80
54eeb0:	eb 30                	jmp    0x54eee2
54eeb2:	33 f6                	xor    %esi,%esi
54eeb4:	8b 4d ec             	mov    -0x14(%ebp),%ecx
54eeb7:	8b 45 f4             	mov    -0xc(%ebp),%eax
54eeba:	89 45 f0             	mov    %eax,-0x10(%ebp)
54eebd:	89 44 99 04          	mov    %eax,0x4(%ecx,%ebx,4)
54eec1:	8b cb                	mov    %ebx,%ecx
54eec3:	80 7f 2b 00          	cmpb   $0x0,0x2b(%edi)
54eec7:	89 4d fc             	mov    %ecx,-0x4(%ebp)
54eeca:	75 19                	jne    0x54eee5
54eecc:	8b 4f 04             	mov    0x4(%edi),%ecx
54eecf:	8d 43 03             	lea    0x3(%ebx),%eax
54eed2:	6a 09                	push   $0x9
54eed4:	6a 01                	push   $0x1
54eed6:	50                   	push   %eax
54eed7:	8b 11                	mov    (%ecx),%edx
54eed9:	51                   	push   %ecx
54eeda:	8b 42 38             	mov    0x38(%edx),%eax
54eedd:	ff d0                	call   *%eax
54eedf:	83 c4 10             	add    $0x10,%esp
54eee2:	8b 4d fc             	mov    -0x4(%ebp),%ecx