88cd80:	74 09                	je     0x88cd8b
88cd82:	ff 76 58             	push   0x58(%esi)
88cd85:	50                   	push   %eax
88cd86:	e8 60 64 b9 ff       	call   0x4231eb
88cd8b:	33 c0                	xor    %eax,%eax
88cd8d:	40                   	inc    %eax
88cd8e:	5e                   	pop    %esi
88cd8f:	c3                   	ret
88cd90:	cc                   	int3
88cd91:	cc                   	int3
88cd92:	cc                   	int3
88cd93:	cc                   	int3
88cd94:	cc                   	int3
88cd95:	cc                   	int3
88cd96:	cc                   	int3
88cd97:	cc                   	int3
88cd98:	cc                   	int3
88cd99:	cc                   	int3
88cd9a:	cc                   	int3
88cd9b:	cc                   	int3
88cd9c:	cc                   	int3
88cd9d:	cc                   	int3
88cd9e:	cc                   	int3
88cd9f:	cc                   	int3
88cda0:	cc                   	int3
88cda1:	55                   	push   %ebp
88cda2:	8b ec                	mov    %esp,%ebp
88cda4:	51                   	push   %ecx
88cda5:	53                   	push   %ebx
88cda6:	56                   	push   %esi
88cda7:	57                   	push   %edi
88cda8:	8b f9                	mov    %ecx,%edi
88cdaa:	83 7f 10 00          	cmpl   $0x0,0x10(%edi)
88cdae:	75 31                	jne    0x88cde1
88cdb0:	6a 10                	push   $0x10
88cdb2:	ff 77 18             	push   0x18(%edi)
88cdb5:	8d 47 14             	lea    0x14(%edi),%eax
88cdb8:	50                   	push   %eax
88cdb9:	e8 ee 62 b8 ff       	call   0x4130ac
88cdbe:	8b 57 18             	mov    0x18(%edi),%edx
88cdc1:	83 c0 08             	add    $0x8,%eax
88cdc4:	8b ca                	mov    %edx,%ecx
88cdc6:	c1 e1 04             	shl    $0x4,%ecx
88cdc9:	83 c1 f0             	add    $0xfffffff0,%ecx
88cdcc:	03 c8                	add    %eax,%ecx
88cdce:	eb 0c                	jmp    0x88cddc
88cdd0:	8b 47 10             	mov    0x10(%edi),%eax
88cdd3:	89 41 08             	mov    %eax,0x8(%ecx)
88cdd6:	89 4f 10             	mov    %ecx,0x10(%edi)
88cdd9:	83 e9 10             	sub    $0x10,%ecx
88cddc:	83 ea 01             	sub    $0x1,%edx
88cddf:	79 ef                	jns    0x88cdd0
88cde1:	8b 5f 10             	mov    0x10(%edi),%ebx
88cde4:	85 db                	test   %ebx,%ebx
88cde6:	74 32                	je     0x88ce1a
88cde8:	8b 73 08             	mov    0x8(%ebx),%esi
88cdeb:	6a 10                	push   $0x10
88cded:	6a 00                	push   $0x0
88cdef:	53                   	push   %ebx
88cdf0:	89 5d fc             	mov    %ebx,-0x4(%ebp)
88cdf3:	e8 c0 79 b8 ff       	call   0x4147b8
88cdf8:	89 73 08             	mov    %esi,0x8(%ebx)
88cdfb:	83 c4 0c             	add    $0xc,%esp
88cdfe:	8b 4f 10             	mov    0x10(%edi),%ecx
88ce01:	8b c3                	mov    %ebx,%eax
88ce03:	8b 49 08             	mov    0x8(%ecx),%ecx
88ce06:	ff 47 0c             	incl   0xc(%edi)
88ce09:	89 4f 10             	mov    %ecx,0x10(%edi)
88ce0c:	8b 4d 08             	mov    0x8(%ebp),%ecx
88ce0f:	5f                   	pop    %edi
88ce10:	5e                   	pop    %esi
88ce11:	89 0b                	mov    %ecx,(%ebx)
88ce13:	5b                   	pop    %ebx
88ce14:	8b e5                	mov    %ebp,%esp
88ce16:	5d                   	pop    %ebp
88ce17:	c2 04 00             	ret    $0x4
88ce1a:	e8 47 51 ba ff       	call   0x431f66
88ce1f:	cc                   	int3
88ce20:	cc                   	int3
88ce21:	cc                   	int3
88ce22:	cc                   	int3
88ce23:	cc                   	int3
88ce24:	cc                   	int3
88ce25:	cc                   	int3
88ce26:	cc                   	int3
88ce27:	cc                   	int3
88ce28:	cc                   	int3
88ce29:	cc                   	int3
88ce2a:	cc                   	int3
88ce2b:	cc                   	int3
88ce2c:	cc                   	int3
88ce2d:	cc                   	int3
88ce2e:	cc                   	int3
88ce2f:	cc                   	int3
88ce30:	cc                   	int3
88ce31:	cc                   	int3
88ce32:	cc                   	int3
88ce33:	cc                   	int3
88ce34:	cc                   	int3
88ce35:	cc                   	int3
88ce36:	cc                   	int3
88ce37:	cc                   	int3
88ce38:	cc                   	int3
88ce39:	cc                   	int3
88ce3a:	cc                   	int3
88ce3b:	cc                   	int3
88ce3c:	cc                   	int3
88ce3d:	cc                   	int3
88ce3e:	cc                   	int3
88ce3f:	55                   	push   %ebp
88ce40:	8b ec                	mov    %esp,%ebp
88ce42:	56                   	push   %esi
88ce43:	8b f1                	mov    %ecx,%esi
88ce45:	83 7e 10 00          	cmpl   $0x0,0x10(%esi)
88ce49:	75 2e                	jne    0x88ce79
88ce4b:	6a 0c                	push   $0xc
88ce4d:	ff 76 18             	push   0x18(%esi)
88ce50:	8d 46 14             	lea    0x14(%esi),%eax
88ce53:	50                   	push   %eax
88ce54:	e8 53 62 b8 ff       	call   0x4130ac
88ce59:	8b 56 18             	mov    0x18(%esi),%edx
88ce5c:	83 c0 08             	add    $0x8,%eax
88ce5f:	6b ca 0c             	imul   $0xc,%edx,%ecx
88ce62:	83 c1 f4             	add    $0xfffffff4,%ecx
88ce65:	03 c8                	add    %eax,%ecx
88ce67:	eb 0b                	jmp    0x88ce74
88ce69:	8b 46 10             	mov    0x10(%esi),%eax
88ce6c:	89 01                	mov    %eax,(%ecx)
88ce6e:	89 4e 10             	mov    %ecx,0x10(%esi)
88ce71:	83 e9 0c             	sub    $0xc,%ecx
88ce74:	83 ea 01             	sub    $0x1,%edx
88ce77:	79 f0                	jns    0x88ce69
88ce79:	8b 46 10             	mov    0x10(%esi),%eax
88ce7c:	85 c0                	test   %eax,%eax
88ce7e:	74 18                	je     0x88ce98
88ce80:	8b 08                	mov    (%eax),%ecx
88ce82:	89 4e 10             	mov    %ecx,0x10(%esi)
88ce85:	8b 4d 08             	mov    0x8(%ebp),%ecx
88ce88:	89 48 04             	mov    %ecx,0x4(%eax)
88ce8b:	8b 4d 0c             	mov    0xc(%ebp),%ecx
88ce8e:	89 08                	mov    %ecx,(%eax)
88ce90:	ff 46 0c             	incl   0xc(%esi)
88ce93:	5e                   	pop    %esi
88ce94:	5d                   	pop    %ebp
88ce95:	c2 08 00             	ret    $0x8
88ce98:	e8 c9 50 ba ff       	call   0x431f66
88ce9d:	cc                   	int3
88ce9e:	cc                   	int3
88ce9f:	cc                   	int3
88cea0:	cc                   	int3
88cea1:	cc                   	int3
88cea2:	cc                   	int3
88cea3:	cc                   	int3
88cea4:	cc                   	int3
88cea5:	cc                   	int3
88cea6:	cc                   	int3
88cea7:	cc                   	int3
88cea8:	cc                   	int3
88cea9:	cc                   	int3
88ceaa:	cc                   	int3
88ceab:	cc                   	int3
88ceac:	cc                   	int3
88cead:	cc                   	int3
88ceae:	cc                   	int3
88ceaf:	cc                   	int3
88ceb0:	cc                   	int3
88ceb1:	cc                   	int3
88ceb2:	cc                   	int3
88ceb3:	cc                   	int3
88ceb4:	cc                   	int3
88ceb5:	55                   	push   %ebp
88ceb6:	8b ec                	mov    %esp,%ebp
88ceb8:	56                   	push   %esi
88ceb9:	8b f1                	mov    %ecx,%esi
88cebb:	83 7e 10 00          	cmpl   $0x0,0x10(%esi)
88cebf:	75 2e                	jne    0x88ceef
88cec1:	6a 0c                	push   $0xc
88cec3:	ff 76 18             	push   0x18(%esi)
88cec6:	8d 46 14             	lea    0x14(%esi),%eax
88cec9:	50                   	push   %eax
88ceca:	e8 dd 61 b8 ff       	call   0x4130ac
88cecf:	8b 56 18             	mov    0x18(%esi),%edx
88ced2:	83 c0 08             	add    $0x8,%eax
88ced5:	6b ca 0c             	imul   $0xc,%edx,%ecx
88ced8:	83 c1 f4             	add    $0xfffffff4,%ecx
88cedb:	03 c8                	add    %eax,%ecx
88cedd:	eb 0b                	jmp    0x88ceea
88cedf:	8b 46 10             	mov    0x10(%esi),%eax
88cee2:	89 01                	mov    %eax,(%ecx)
88cee4:	89 4e 10             	mov    %ecx,0x10(%esi)
88cee7:	83 e9 0c             	sub    $0xc,%ecx
88ceea:	83 ea 01             	sub    $0x1,%edx
88ceed:	79 f0                	jns    0x88cedf
88ceef:	8b 46 10             	mov    0x10(%esi),%eax
88cef2:	85 c0                	test   %eax,%eax
88cef4:	74 18                	je     0x88cf0e
88cef6:	8b 08                	mov    (%eax),%ecx
88cef8:	89 4e 10             	mov    %ecx,0x10(%esi)
88cefb:	8b 4d 08             	mov    0x8(%ebp),%ecx
88cefe:	89 48 04             	mov    %ecx,0x4(%eax)
88cf01:	8b 4d 0c             	mov    0xc(%ebp),%ecx
88cf04:	89 08                	mov    %ecx,(%eax)
88cf06:	ff 46 0c             	incl   0xc(%esi)
88cf09:	5e                   	pop    %esi
88cf0a:	5d                   	pop    %ebp
88cf0b:	c2 08 00             	ret    $0x8
88cf0e:	e8 53 50 ba ff       	call   0x431f66
88cf13:	cc                   	int3
88cf14:	cc                   	int3
88cf15:	cc                   	int3
88cf16:	cc                   	int3
88cf17:	cc                   	int3
88cf18:	cc                   	int3
88cf19:	cc                   	int3
88cf1a:	cc                   	int3
88cf1b:	cc                   	int3
88cf1c:	cc                   	int3
88cf1d:	cc                   	int3
88cf1e:	cc                   	int3
88cf1f:	cc                   	int3
88cf20:	cc                   	int3
88cf21:	cc                   	int3
88cf22:	cc                   	int3
88cf23:	cc                   	int3
88cf24:	cc                   	int3
88cf25:	cc                   	int3
88cf26:	cc                   	int3
88cf27:	cc                   	int3
88cf28:	cc                   	int3
88cf29:	cc                   	int3
88cf2a:	cc                   	int3
88cf2b:	6a 38                	push   $0x38
88cf2d:	b8 49 f5 b9 00       	mov    $0xb9f549,%eax
88cf32:	e8 54 d3 b7 ff       	call   0x40a28b
88cf37:	8b d9                	mov    %ecx,%ebx
88cf39:	33 c9                	xor    %ecx,%ecx
88cf3b:	39 4b 28             	cmp    %ecx,0x28(%ebx)
88cf3e:	0f 85 ed 00 00 00    	jne    0x88d031
88cf44:	dd 83 b8 00 00 00    	fldl   0xb8(%ebx)
88cf4a:	d9 e8                	fld1
88cf4c:	dd e1                	fucom  %st(1)
88cf4e:	df e0                	fnstsw %ax
88cf50:	dd d9                	fstp   %st(1)
88cf52:	f6 c4 44             	test   $0x44,%ah
88cf55:	7b 67                	jnp    0x88cfbe
88cf57:	8b 83 ac 00 00 00    	mov    0xac(%ebx),%eax
88cf5d:	89 4b 08             	mov    %ecx,0x8(%ebx)
88cf60:	dd 9b b8 00 00 00    	fstpl  0xb8(%ebx)
88cf66:	83 f8 ff             	cmp    $0xffffffff,%eax
88cf69:	74 0d                	je     0x88cf78
88cf6b:	83 8b ac 00 00 00 ff 	orl    $0xffffffff,0xac(%ebx)
88cf72:	89 83 a8 00 00 00    	mov    %eax,0xa8(%ebx)
88cf78:	89 4d d4             	mov    %ecx,-0x2c(%ebp)
88cf7b:	8d 7b 6c             	lea    0x6c(%ebx),%edi
88cf7e:	89 4d d8             	mov    %ecx,-0x28(%ebp)
88cf81:	8d 75 d4             	lea    -0x2c(%ebp),%esi
88cf84:	89 4d dc             	mov    %ecx,-0x24(%ebp)
88cf87:	89 4d e0             	mov    %ecx,-0x20(%ebp)
88cf8a:	a5                   	movsl  %ds:(%esi),%es:(%edi)
88cf8b:	8b 43 5c             	mov    0x5c(%ebx),%eax
88cf8e:	89 43 54             	mov    %eax,0x54(%ebx)
88cf91:	8b 43 60             	mov    0x60(%ebx),%eax
88cf94:	a5                   	movsl  %ds:(%esi),%es:(%edi)
88cf95:	89 43 58             	mov    %eax,0x58(%ebx)
88cf98:	89 4b 5c             	mov    %ecx,0x5c(%ebx)
88cf9b:	89 4b 60             	mov    %ecx,0x60(%ebx)
88cf9e:	a5                   	movsl  %ds:(%esi),%es:(%edi)
88cf9f:	89 4b 64             	mov    %ecx,0x64(%ebx)
88cfa2:	89 4b 68             	mov    %ecx,0x68(%ebx)
88cfa5:	a5                   	movsl  %ds:(%esi),%es:(%edi)
88cfa6:	89 4d d4             	mov    %ecx,-0x2c(%ebp)
88cfa9:	8d 7b 7c             	lea    0x7c(%ebx),%edi
88cfac:	89 4d d8             	mov    %ecx,-0x28(%ebp)
88cfaf:	8d 75 d4             	lea    -0x2c(%ebp),%esi
88cfb2:	89 4d dc             	mov    %ecx,-0x24(%ebp)
88cfb5:	89 4d e0             	mov    %ecx,-0x20(%ebp)
88cfb8:	a5                   	movsl  %ds:(%esi),%es:(%edi)
88cfb9:	a5                   	movsl  %ds:(%esi),%es:(%edi)
88cfba:	a5                   	movsl  %ds:(%esi),%es:(%edi)
88cfbb:	a5                   	movsl  %ds:(%esi),%es:(%edi)
88cfbc:	eb 02                	jmp    0x88cfc0
88cfbe:	dd d8                	fstp   %st(0)
88cfc0:	8d b3 8c 00 00 00    	lea    0x8c(%ebx),%esi
88cfc6:	39 0e                	cmp    %ecx,(%esi)
88cfc8:	74 13                	je     0x88cfdd
88cfca:	39 4b 18             	cmp    %ecx,0x18(%ebx)
88cfcd:	74 68                	je     0x88d037
88cfcf:	51                   	push   %ecx
88cfd0:	ff b3 98 00 00 00    	push   0x98(%ebx)
88cfd6:	8b cb                	mov    %ebx,%ecx
88cfd8:	e8 77 5d b9 ff       	call   0x422d54
88cfdd:	8b cb                	mov    %ebx,%ecx
88cfdf:	e8 3f 9f b7 ff       	call   0x406f23
88cfe4:	83 3d e0 d1 d7 00 00 	cmpl   $0x0,0xd7d1e0
88cfeb:	74 09                	je     0x88cff6
88cfed:	ff 73 54             	push   0x54(%ebx)
88cff0:	56                   	push   %esi
88cff1:	e8 56 27 bb ff       	call   0x43f74c
88cff6:	8d b3 90 00 00 00    	lea    0x90(%ebx),%esi
88cffc:	56                   	push   %esi
88cffd:	e8 55 40 ba ff       	call   0x431057
88d002:	33 ff                	xor    %edi,%edi
88d004:	89 3e                	mov    %edi,(%esi)
88d006:	8d b3 94 00 00 00    	lea    0x94(%ebx),%esi
88d00c:	56                   	push   %esi
88d00d:	e8 45 40 ba ff       	call   0x431057
88d012:	89 3e                	mov    %edi,(%esi)
88d014:	39 7b 30             	cmp    %edi,0x30(%ebx)
88d017:	74 0a                	je     0x88d023
88d019:	ff 73 0c             	push   0xc(%ebx)
88d01c:	8b cb                	mov    %ebx,%ecx
88d01e:	e8 53 95 b9 ff       	call   0x426576
88d023:	e8 0e b3 b8 ff       	call   0x418336
88d028:	8b 40 20             	mov    0x20(%eax),%eax
88d02b:	89 83 b0 00 00 00    	mov    %eax,0xb0(%ebx)
88d031:	e8 e1 13 b8 ff       	call   0x40e417
88d036:	c3                   	ret
88d037:	39 8b cc 00 00 00    	cmp    %ecx,0xcc(%ebx)
88d03d:	74 f2                	je     0x88d031
88d03f:	56                   	push   %esi
88d040:	e8 12 40 ba ff       	call   0x431057
88d045:	8b bb c4 00 00 00    	mov    0xc4(%ebx),%edi
88d04b:	8b 8b e0 00 00 00    	mov    0xe0(%ebx),%ecx
88d051:	85 ff                	test   %edi,%edi
88d053:	74 88                	je     0x88cfdd
88d055:	85 c9                	test   %ecx,%ecx
88d057:	0f 84 11 01 00 00    	je     0x88d16e
88d05d:	8b 57 08             	mov    0x8(%edi),%edx
88d060:	8b 3f                	mov    (%edi),%edi
88d062:	85 d2                	test   %edx,%edx
88d064:	0f 84 04 01 00 00    	je     0x88d16e
88d06a:	8b 41 08             	mov    0x8(%ecx),%eax
88d06d:	8b 09                	mov    (%ecx),%ecx
88d06f:	83 65 e0 00          	andl   $0x0,-0x20(%ebp)
88d073:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
88d076:	89 45 e8             	mov    %eax,-0x18(%ebp)
88d079:	c7 45 dc f4 46 c4 00 	movl   $0xc446f4,-0x24(%ebp)
88d080:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
88d084:	0f b7 ca             	movzwl %dx,%ecx
88d087:	50                   	push   %eax
88d088:	89 4d ec             	mov    %ecx,-0x14(%ebp)
88d08b:	51                   	push   %ecx
88d08c:	8d 4d dc             	lea    -0x24(%ebp),%ecx
88d08f:	e8 c7 61 b7 ff       	call   0x40325b
88d094:	85 c0                	test   %eax,%eax
88d096:	74 11                	je     0x88d0a9
88d098:	8d 4d dc             	lea    -0x24(%ebp),%ecx
88d09b:	e8 63 25 ba ff       	call   0x42f603
88d0a0:	8b f0                	mov    %eax,%esi
88d0a2:	89 75 f0             	mov    %esi,-0x10(%ebp)