45cc8e:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
45cc91:	51                   	push   %ecx
45cc92:	89 5d c0             	mov    %ebx,-0x40(%ebp)
45cc95:	8d 4d c0             	lea    -0x40(%ebp),%ecx
45cc98:	89 5d c4             	mov    %ebx,-0x3c(%ebp)
45cc9b:	8b 30                	mov    (%eax),%esi
45cc9d:	51                   	push   %ecx
45cc9e:	50                   	push   %eax
45cc9f:	8b 4e 0c             	mov    0xc(%esi),%ecx
45cca2:	ff 15 2c 81 4a 00    	call   *0x4a812c
45cca8:	ff 56 0c             	call   *0xc(%esi)
45ccab:	85 c0                	test   %eax,%eax
45ccad:	79 21                	jns    0x45ccd0
45ccaf:	8b 45 d0             	mov    -0x30(%ebp),%eax
45ccb2:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
45ccb5:	51                   	push   %ecx
45ccb6:	8d 4d c0             	lea    -0x40(%ebp),%ecx
45ccb9:	51                   	push   %ecx
45ccba:	8b 30                	mov    (%eax),%esi
45ccbc:	50                   	push   %eax
45ccbd:	8b 4e 0c             	mov    0xc(%esi),%ecx
45ccc0:	ff 15 2c 81 4a 00    	call   *0x4a812c
45ccc6:	ff 56 0c             	call   *0xc(%esi)
45ccc9:	50                   	push   %eax
45ccca:	ff 15 b0 75 4a 00    	call   *0x4a75b0
45ccd0:	8b 45 d8             	mov    -0x28(%ebp),%eax
45ccd3:	ff 75 c4             	push   -0x3c(%ebp)
45ccd6:	ff 75 c0             	push   -0x40(%ebp)
45ccd9:	8b 08                	mov    (%eax),%ecx
45ccdb:	50                   	push   %eax
45ccdc:	8b 71 10             	mov    0x10(%ecx),%esi
45ccdf:	8b ce                	mov    %esi,%ecx
45cce1:	ff 15 2c 81 4a 00    	call   *0x4a812c
45cce7:	ff d6                	call   *%esi
45cce9:	85 c0                	test   %eax,%eax
45cceb:	79 20                	jns    0x45cd0d
45cced:	8b 45 d8             	mov    -0x28(%ebp),%eax
45ccf0:	ff 75 c4             	push   -0x3c(%ebp)
45ccf3:	ff 75 c0             	push   -0x40(%ebp)
45ccf6:	8b 08                	mov    (%eax),%ecx
45ccf8:	50                   	push   %eax
45ccf9:	8b 71 10             	mov    0x10(%ecx),%esi
45ccfc:	8b ce                	mov    %esi,%ecx
45ccfe:	ff 15 2c 81 4a 00    	call   *0x4a812c
45cd04:	ff d6                	call   *%esi
45cd06:	50                   	push   %eax
45cd07:	ff 15 b0 75 4a 00    	call   *0x4a75b0
45cd0d:	8b 45 d0             	mov    -0x30(%ebp),%eax
45cd10:	8d 55 dc             	lea    -0x24(%ebp),%edx
45cd13:	52                   	push   %edx
45cd14:	50                   	push   %eax
45cd15:	8b 08                	mov    (%eax),%ecx
45cd17:	8b 71 10             	mov    0x10(%ecx),%esi
45cd1a:	8b ce                	mov    %esi,%ecx
45cd1c:	ff 15 2c 81 4a 00    	call   *0x4a812c
45cd22:	ff d6                	call   *%esi
45cd24:	85 c0                	test   %eax,%eax
45cd26:	79 1e                	jns    0x45cd46
45cd28:	8b 45 d0             	mov    -0x30(%ebp),%eax
45cd2b:	8d 55 dc             	lea    -0x24(%ebp),%edx
45cd2e:	52                   	push   %edx
45cd2f:	50                   	push   %eax
45cd30:	8b 08                	mov    (%eax),%ecx
45cd32:	8b 71 10             	mov    0x10(%ecx),%esi
45cd35:	8b ce                	mov    %esi,%ecx
45cd37:	ff 15 2c 81 4a 00    	call   *0x4a812c
45cd3d:	ff d6                	call   *%esi
45cd3f:	50                   	push   %eax
45cd40:	ff 15 b0 75 4a 00    	call   *0x4a75b0
45cd46:	8b 45 d8             	mov    -0x28(%ebp),%eax
45cd49:	8d 55 dc             	lea    -0x24(%ebp),%edx
45cd4c:	52                   	push   %edx
45cd4d:	50                   	push   %eax
45cd4e:	8b 08                	mov    (%eax),%ecx
45cd50:	8b 71 18             	mov    0x18(%ecx),%esi
45cd53:	8b ce                	mov    %esi,%ecx
45cd55:	ff 15 2c 81 4a 00    	call   *0x4a812c
45cd5b:	ff d6                	call   *%esi
45cd5d:	85 c0                	test   %eax,%eax
45cd5f:	79 1e                	jns    0x45cd7f
45cd61:	8b 45 d8             	mov    -0x28(%ebp),%eax
45cd64:	8d 55 dc             	lea    -0x24(%ebp),%edx
45cd67:	52                   	push   %edx
45cd68:	50                   	push   %eax
45cd69:	8b 08                	mov    (%eax),%ecx
45cd6b:	8b 71 18             	mov    0x18(%ecx),%esi
45cd6e:	8b ce                	mov    %esi,%ecx
45cd70:	ff 15 2c 81 4a 00    	call   *0x4a812c
45cd76:	ff d6                	call   *%esi
45cd78:	50                   	push   %eax
45cd79:	ff 15 b0 75 4a 00    	call   *0x4a75b0
45cd7f:	6a 04                	push   $0x4
45cd81:	8d 75 dc             	lea    -0x24(%ebp),%esi
45cd84:	8b cb                	mov    %ebx,%ecx
45cd86:	5a                   	pop    %edx
45cd87:	8b 04 8e             	mov    (%esi,%ecx,4),%eax
45cd8a:	ba 6c fb 40 00       	mov    $0x40fb6c,%edx
45cd8f:	6a 04                	push   $0x4
45cd91:	3b 04 8a             	cmp    (%edx,%ecx,4),%eax
45cd94:	5a                   	pop    %edx
45cd95:	75 07                	jne    0x45cd9e
45cd97:	41                   	inc    %ecx
45cd98:	3b ca                	cmp    %edx,%ecx
45cd9a:	75 eb                	jne    0x45cd87
45cd9c:	eb 56                	jmp    0x45cdf4
45cd9e:	8d 75 dc             	lea    -0x24(%ebp),%esi
45cda1:	8b cb                	mov    %ebx,%ecx
45cda3:	8b 04 8e             	mov    (%esi,%ecx,4),%eax
45cda6:	ba 5c fb 40 00       	mov    $0x40fb5c,%edx
45cdab:	6a 04                	push   $0x4
45cdad:	3b 04 8a             	cmp    (%edx,%ecx,4),%eax
45cdb0:	5a                   	pop    %edx
45cdb1:	75 07                	jne    0x45cdba
45cdb3:	41                   	inc    %ecx
45cdb4:	3b ca                	cmp    %edx,%ecx
45cdb6:	75 eb                	jne    0x45cda3
45cdb8:	eb 3a                	jmp    0x45cdf4
45cdba:	8d 75 dc             	lea    -0x24(%ebp),%esi
45cdbd:	8b cb                	mov    %ebx,%ecx
45cdbf:	8b 04 8e             	mov    (%esi,%ecx,4),%eax
45cdc2:	ba 4c fb 40 00       	mov    $0x40fb4c,%edx
45cdc7:	6a 04                	push   $0x4
45cdc9:	3b 04 8a             	cmp    (%edx,%ecx,4),%eax
45cdcc:	5a                   	pop    %edx
45cdcd:	75 07                	jne    0x45cdd6
45cdcf:	41                   	inc    %ecx
45cdd0:	3b ca                	cmp    %edx,%ecx
45cdd2:	75 eb                	jne    0x45cdbf
45cdd4:	eb 1e                	jmp    0x45cdf4
45cdd6:	8d 75 dc             	lea    -0x24(%ebp),%esi
45cdd9:	8b cb                	mov    %ebx,%ecx
45cddb:	8b 04 8e             	mov    (%esi,%ecx,4),%eax
45cdde:	ba 3c fb 40 00       	mov    $0x40fb3c,%edx
45cde3:	6a 04                	push   $0x4
45cde5:	3b 04 8a             	cmp    (%edx,%ecx,4),%eax
45cde8:	5a                   	pop    %edx
45cde9:	0f 85 cb 00 00 00    	jne    0x45ceba
45cdef:	41                   	inc    %ecx
45cdf0:	3b ca                	cmp    %edx,%ecx
45cdf2:	75 e7                	jne    0x45cddb
45cdf4:	89 5d d4             	mov    %ebx,-0x2c(%ebp)
45cdf7:	88 55 fc             	mov    %dl,-0x4(%ebp)
45cdfa:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
45cdfd:	8b 07                	mov    (%edi),%eax
45cdff:	51                   	push   %ecx
45ce00:	57                   	push   %edi
45ce01:	8b 70 24             	mov    0x24(%eax),%esi
45ce04:	8b ce                	mov    %esi,%ecx
45ce06:	ff 15 2c 81 4a 00    	call   *0x4a812c
45ce0c:	ff d6                	call   *%esi
45ce0e:	85 c0                	test   %eax,%eax
45ce10:	79 1b                	jns    0x45ce2d
45ce12:	8b 07                	mov    (%edi),%eax
45ce14:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
45ce17:	51                   	push   %ecx
45ce18:	57                   	push   %edi
45ce19:	8b 70 24             	mov    0x24(%eax),%esi
45ce1c:	8b ce                	mov    %esi,%ecx
45ce1e:	ff 15 2c 81 4a 00    	call   *0x4a812c
45ce24:	ff d6                	call   *%esi
45ce26:	50                   	push   %eax
45ce27:	ff 15 b0 75 4a 00    	call   *0x4a75b0
45ce2d:	8b 45 d0             	mov    -0x30(%ebp),%eax
45ce30:	ff 75 d4             	push   -0x2c(%ebp)
45ce33:	50                   	push   %eax
45ce34:	8b 08                	mov    (%eax),%ecx
45ce36:	8b 71 18             	mov    0x18(%ecx),%esi
45ce39:	8b ce                	mov    %esi,%ecx
45ce3b:	ff 15 2c 81 4a 00    	call   *0x4a812c
45ce41:	ff d6                	call   *%esi
45ce43:	85 c0                	test   %eax,%eax
45ce45:	79 1d                	jns    0x45ce64
45ce47:	8b 45 d0             	mov    -0x30(%ebp),%eax
45ce4a:	ff 75 d4             	push   -0x2c(%ebp)
45ce4d:	50                   	push   %eax
45ce4e:	8b 08                	mov    (%eax),%ecx
45ce50:	8b 71 18             	mov    0x18(%ecx),%esi
45ce53:	8b ce                	mov    %esi,%ecx
45ce55:	ff 15 2c 81 4a 00    	call   *0x4a812c
45ce5b:	ff d6                	call   *%esi
45ce5d:	50                   	push   %eax
45ce5e:	ff 15 b0 75 4a 00    	call   *0x4a75b0
45ce64:	8b 45 d8             	mov    -0x28(%ebp),%eax
45ce67:	ff 75 d4             	push   -0x2c(%ebp)
45ce6a:	50                   	push   %eax
45ce6b:	8b 08                	mov    (%eax),%ecx
45ce6d:	8b 71 20             	mov    0x20(%ecx),%esi
45ce70:	8b ce                	mov    %esi,%ecx
45ce72:	ff 15 2c 81 4a 00    	call   *0x4a812c
45ce78:	ff d6                	call   *%esi
45ce7a:	85 c0                	test   %eax,%eax
45ce7c:	79 1d                	jns    0x45ce9b
45ce7e:	8b 45 d8             	mov    -0x28(%ebp),%eax
45ce81:	ff 75 d4             	push   -0x2c(%ebp)
45ce84:	50                   	push   %eax
45ce85:	8b 08                	mov    (%eax),%ecx
45ce87:	8b 71 20             	mov    0x20(%ecx),%esi
45ce8a:	8b ce                	mov    %esi,%ecx
45ce8c:	ff 15 2c 81 4a 00    	call   *0x4a812c
45ce92:	ff d6                	call   *%esi
45ce94:	50                   	push   %eax
45ce95:	ff 15 b0 75 4a 00    	call   *0x4a75b0
45ce9b:	c6 45 fc 05          	movb   $0x5,-0x4(%ebp)
45ce9f:	8b 45 d4             	mov    -0x2c(%ebp),%eax
45cea2:	85 c0                	test   %eax,%eax
45cea4:	74 10                	je     0x45ceb6
45cea6:	8b 08                	mov    (%eax),%ecx
45cea8:	50                   	push   %eax
45cea9:	8b 71 08             	mov    0x8(%ecx),%esi
45ceac:	8b ce                	mov    %esi,%ecx
45ceae:	ff 15 2c 81 4a 00    	call   *0x4a812c
45ceb4:	ff d6                	call   *%esi
45ceb6:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
45ceba:	8b 55 d8             	mov    -0x28(%ebp),%edx
45cebd:	8b 4d cc             	mov    -0x34(%ebp),%ecx
45cec0:	e8 98 34 fc ff       	call   0x42035d
45cec5:	89 5d b8             	mov    %ebx,-0x48(%ebp)
45cec8:	c6 45 fc 06          	movb   $0x6,-0x4(%ebp)
45cecc:	8d 55 b8             	lea    -0x48(%ebp),%edx
45cecf:	8b 45 cc             	mov    -0x34(%ebp),%eax
45ced2:	52                   	push   %edx
45ced3:	50                   	push   %eax
45ced4:	8b 08                	mov    (%eax),%ecx
45ced6:	8b 71 28             	mov    0x28(%ecx),%esi
45ced9:	8b ce                	mov    %esi,%ecx
45cedb:	ff 15 2c 81 4a 00    	call   *0x4a812c
45cee1:	ff d6                	call   *%esi
45cee3:	85 c0                	test   %eax,%eax
45cee5:	0f 88 82 00 00 00    	js     0x45cf6d
45ceeb:	89 5d d4             	mov    %ebx,-0x2c(%ebp)
45ceee:	c6 45 fc 07          	movb   $0x7,-0x4(%ebp)
45cef2:	8d 55 d4             	lea    -0x2c(%ebp),%edx
45cef5:	8b 45 cc             	mov    -0x34(%ebp),%eax
45cef8:	52                   	push   %edx
45cef9:	50                   	push   %eax
45cefa:	8b 08                	mov    (%eax),%ecx
45cefc:	8b 71 20             	mov    0x20(%ecx),%esi
45ceff:	8b ce                	mov    %esi,%ecx
45cf01:	ff 15 2c 81 4a 00    	call   *0x4a812c
45cf07:	ff d6                	call   *%esi
45cf09:	85 c0                	test   %eax,%eax
45cf0b:	78 45                	js     0x45cf52
45cf0d:	89 5d b4             	mov    %ebx,-0x4c(%ebp)
45cf10:	8d 45 b4             	lea    -0x4c(%ebp),%eax
45cf13:	c6 45 fc 08          	movb   $0x8,-0x4(%ebp)
45cf17:	8b 55 b8             	mov    -0x48(%ebp),%edx
45cf1a:	8b cf                	mov    %edi,%ecx
45cf1c:	50                   	push   %eax
45cf1d:	ff 75 d4             	push   -0x2c(%ebp)
45cf20:	e8 2f ee ff ff       	call   0x45bd54
45cf25:	8b 75 b4             	mov    -0x4c(%ebp),%esi
45cf28:	85 c0                	test   %eax,%eax
45cf2a:	78 0e                	js     0x45cf3a
45cf2c:	ff 75 a0             	push   -0x60(%ebp)
45cf2f:	8b 55 d8             	mov    -0x28(%ebp),%edx
45cf32:	8b ce                	mov    %esi,%ecx
45cf34:	57                   	push   %edi
45cf35:	e8 a8 01 00 00       	call   0x45d0e2
45cf3a:	c6 45 fc 09          	movb   $0x9,-0x4(%ebp)
45cf3e:	85 f6                	test   %esi,%esi
45cf40:	74 10                	je     0x45cf52
45cf42:	8b 06                	mov    (%esi),%eax
45cf44:	56                   	push   %esi
45cf45:	8b 70 08             	mov    0x8(%eax),%esi
45cf48:	8b ce                	mov    %esi,%ecx
45cf4a:	ff 15 2c 81 4a 00    	call   *0x4a812c
45cf50:	ff d6                	call   *%esi
45cf52:	c6 45 fc 0a          	movb   $0xa,-0x4(%ebp)
45cf56:	8b 45 d4             	mov    -0x2c(%ebp),%eax
45cf59:	85 c0                	test   %eax,%eax
45cf5b:	74 10                	je     0x45cf6d
45cf5d:	8b 08                	mov    (%eax),%ecx
45cf5f:	50                   	push   %eax
45cf60:	8b 71 08             	mov    0x8(%ecx),%esi
45cf63:	8b ce                	mov    %esi,%ecx
45cf65:	ff 15 2c 81 4a 00    	call   *0x4a812c
45cf6b:	ff d6                	call   *%esi
45cf6d:	89 5d bc             	mov    %ebx,-0x44(%ebp)
45cf70:	c6 45 fc 0b          	movb   $0xb,-0x4(%ebp)
45cf74:	8d 55 bc             	lea    -0x44(%ebp),%edx
45cf77:	8b 45 d8             	mov    -0x28(%ebp),%eax
45cf7a:	52                   	push   %edx
45cf7b:	50                   	push   %eax
45cf7c:	8b 08                	mov    (%eax),%ecx
45cf7e:	8b 71 34             	mov    0x34(%ecx),%esi
45cf81:	8b ce                	mov    %esi,%ecx
45cf83:	ff 15 2c 81 4a 00    	call   *0x4a812c
45cf89:	ff d6                	call   *%esi
45cf8b:	85 c0                	test   %eax,%eax
45cf8d:	78 3c                	js     0x45cfcb
45cf8f:	33 c0                	xor    %eax,%eax
45cf91:	8d 7d 8c             	lea    -0x74(%ebp),%edi
45cf94:	ab                   	stos   %eax,%es:(%edi)
45cf95:	8d 4d 8c             	lea    -0x74(%ebp),%ecx
45cf98:	6a 12                	push   $0x12
45cf9a:	ab                   	stos   %eax,%es:(%edi)
45cf9b:	ab                   	stos   %eax,%es:(%edi)
45cf9c:	ab                   	stos   %eax,%es:(%edi)
45cf9d:	58                   	pop    %eax
45cf9e:	66 89 45 8c          	mov    %ax,-0x74(%ebp)
45cfa2:	8b 45 bc             	mov    -0x44(%ebp),%eax
45cfa5:	51                   	push   %ecx
45cfa6:	c7 45 94 01 00 00 00 	movl   $0x1,-0x6c(%ebp)
45cfad:	68 7c 0b 41 00       	push   $0x410b7c
45cfb2:	8b 30                	mov    (%eax),%esi
45cfb4:	50                   	push   %eax
45cfb5:	8b 4e 1c             	mov    0x1c(%esi),%ecx
45cfb8:	ff 15 2c 81 4a 00    	call   *0x4a812c
45cfbe:	ff 56 1c             	call   *0x1c(%esi)
45cfc1:	8d 45 8c             	lea    -0x74(%ebp),%eax
45cfc4:	50                   	push   %eax
45cfc5:	ff 15 64 7e 4a 00    	call   *0x4a7e64
45cfcb:	8b 45 d8             	mov    -0x28(%ebp),%eax
45cfce:	53                   	push   %ebx
45cfcf:	ff 75 d0             	push   -0x30(%ebp)
45cfd2:	8b 08                	mov    (%eax),%ecx
45cfd4:	50                   	push   %eax
45cfd5:	8b 71 2c             	mov    0x2c(%ecx),%esi
45cfd8:	8b ce                	mov    %esi,%ecx
45cfda:	ff 15 2c 81 4a 00    	call   *0x4a812c
45cfe0:	ff d6                	call   *%esi
45cfe2:	85 c0                	test   %eax,%eax
45cfe4:	79 1e                	jns    0x45d004
45cfe6:	8b 45 d8             	mov    -0x28(%ebp),%eax
45cfe9:	53                   	push   %ebx
45cfea:	ff 75 d0             	push   -0x30(%ebp)
45cfed:	8b 08                	mov    (%eax),%ecx
45cfef:	50                   	push   %eax
45cff0:	8b 71 2c             	mov    0x2c(%ecx),%esi
45cff3:	8b ce                	mov    %esi,%ecx
45cff5:	ff 15 2c 81 4a 00    	call   *0x4a812c
45cffb:	ff d6                	call   *%esi
45cffd:	50                   	push   %eax
45cffe:	ff 15 b0 75 4a 00    	call   *0x4a75b0
45d004:	8b 45 d8             	mov    -0x28(%ebp),%eax
45d007:	50                   	push   %eax
45d008:	8b 08                	mov    (%eax),%ecx
45d00a:	8b 71 30             	mov    0x30(%ecx),%esi
45d00d:	8b ce                	mov    %esi,%ecx
45d00f:	ff 15 2c 81 4a 00    	call   *0x4a812c
45d015:	ff d6                	call   *%esi
45d017:	85 c0                	test   %eax,%eax
45d019:	79 1a                	jns    0x45d035
45d01b:	8b 45 d8             	mov    -0x28(%ebp),%eax
45d01e:	50                   	push   %eax
45d01f:	8b 08                	mov    (%eax),%ecx
45d021:	8b 71 30             	mov    0x30(%ecx),%esi
45d024:	8b ce                	mov    %esi,%ecx
45d026:	ff 15 2c 81 4a 00    	call   *0x4a812c
45d02c:	ff d6                	call   *%esi