7ccb5c:	3b d0                	cmp    %eax,%edx
7ccb5e:	7e 25                	jle    0x7ccb85
7ccb60:	8b 8f 98 00 00 00    	mov    0x98(%edi),%ecx
7ccb66:	8b 7c 24 4c          	mov    0x4c(%esp),%edi
7ccb6a:	83 c1 06             	add    $0x6,%ecx
7ccb6d:	0f 1f 00             	nopl   (%eax)
7ccb70:	66 39 39             	cmp    %di,(%ecx)
7ccb73:	76 08                	jbe    0x7ccb7d
7ccb75:	40                   	inc    %eax
7ccb76:	83 c1 04             	add    $0x4,%ecx
7ccb79:	3b c2                	cmp    %edx,%eax
7ccb7b:	7c f3                	jl     0x7ccb70
7ccb7d:	8b 7c 24 54          	mov    0x54(%esp),%edi
7ccb81:	89 44 24 2c          	mov    %eax,0x2c(%esp)
7ccb85:	8b 97 98 00 00 00    	mov    0x98(%edi),%edx
7ccb8b:	0f b7 4c 82 fc       	movzwl -0x4(%edx,%eax,4),%ecx
7ccb90:	0f b7 44 82 fe       	movzwl -0x2(%edx,%eax,4),%eax
7ccb95:	33 d2                	xor    %edx,%edx
7ccb97:	89 4c 24 38          	mov    %ecx,0x38(%esp)
7ccb9b:	8b 4c 24 48          	mov    0x48(%esp),%ecx
7ccb9f:	41                   	inc    %ecx
7ccba0:	0f af c1             	imul   %ecx,%eax
7ccba3:	f7 74 24 40          	divl   0x40(%esp)
7ccba7:	8b 54 24 18          	mov    0x18(%esp),%edx
7ccbab:	4a                   	dec    %edx
7ccbac:	03 c2                	add    %edx,%eax
7ccbae:	8b 97 98 00 00 00    	mov    0x98(%edi),%edx
7ccbb4:	0f b7 c0             	movzwl %ax,%eax
7ccbb7:	89 44 24 24          	mov    %eax,0x24(%esp)
7ccbbb:	8b 44 24 2c          	mov    0x2c(%esp),%eax
7ccbbf:	0f b7 44 82 02       	movzwl 0x2(%edx,%eax,4),%eax
7ccbc4:	33 d2                	xor    %edx,%edx
7ccbc6:	0f af c1             	imul   %ecx,%eax
7ccbc9:	8b 4c 24 2c          	mov    0x2c(%esp),%ecx
7ccbcd:	f7 74 24 40          	divl   0x40(%esp)
7ccbd1:	01 44 24 18          	add    %eax,0x18(%esp)
7ccbd5:	66 66 66 0f 1f 84 00 	data16 data16 nopw 0x0(%eax,%eax,1)
7ccbdc:	00 00 00 00
7ccbe0:	8b 87 98 00 00 00    	mov    0x98(%edi),%eax
7ccbe6:	49                   	dec    %ecx
7ccbe7:	66 83 44 88 02 08    	addw   $0x8,0x2(%eax,%ecx,4)
7ccbed:	85 c9                	test   %ecx,%ecx
7ccbef:	7f ef                	jg     0x7ccbe0
7ccbf1:	8b 87 98 00 00 00    	mov    0x98(%edi),%eax
7ccbf7:	b9 d8 0e 00 00       	mov    $0xed8,%ecx
7ccbfc:	66 39 48 02          	cmp    %cx,0x2(%eax)
7ccc00:	76 0f                	jbe    0x7ccc11
7ccc02:	8d 87 90 00 00 00    	lea    0x90(%edi),%eax
7ccc08:	50                   	push   %eax
7ccc09:	e8 62 13 00 00       	call   0x7cdf70
7ccc0e:	83 c4 04             	add    $0x4,%esp
7ccc11:	8b 4c 24 14          	mov    0x14(%esp),%ecx
7ccc15:	8b 54 24 24          	mov    0x24(%esp),%edx
7ccc19:	0f 1f 80 00 00 00 00 	nopl   0x0(%eax)
7ccc20:	8b 44 24 18          	mov    0x18(%esp),%eax
7ccc24:	33 c2                	xor    %edx,%eax
7ccc26:	a9 00 80 00 00       	test   $0x8000,%eax
7ccc2b:	8b 44 24 18          	mov    0x18(%esp),%eax
7ccc2f:	74 2a                	je     0x7ccc5b
7ccc31:	a9 00 40 00 00       	test   $0x4000,%eax
7ccc36:	0f 84 cf 00 00 00    	je     0x7ccd0b
7ccc3c:	f7 c2 00 40 00 00    	test   $0x4000,%edx
7ccc42:	0f 85 c3 00 00 00    	jne    0x7ccd0b
7ccc48:	81 74 24 1c 00 40 00 	xorl   $0x4000,0x1c(%esp)
7ccc4f:	00
7ccc50:	25 ff 3f 00 00       	and    $0x3fff,%eax
7ccc55:	81 ca 00 40 00 00    	or     $0x4000,%edx
7ccc5b:	03 c0                	add    %eax,%eax
7ccc5d:	89 44 24 18          	mov    %eax,0x18(%esp)
7ccc61:	8d 04 12             	lea    (%edx,%edx,1),%eax
7ccc64:	83 c8 01             	or     $0x1,%eax
7ccc67:	0f b7 d0             	movzwl %ax,%edx
7ccc6a:	89 54 24 24          	mov    %edx,0x24(%esp)
7ccc6e:	80 fb 01             	cmp    $0x1,%bl
7ccc71:	73 71                	jae    0x7ccce4
7ccc73:	3b f5                	cmp    %ebp,%esi
7ccc75:	72 1b                	jb     0x7ccc92
7ccc77:	57                   	push   %edi
7ccc78:	e8 13 14 00 00       	call   0x7ce090
7ccc7d:	83 c4 04             	add    $0x4,%esp
7ccc80:	85 c0                	test   %eax,%eax
7ccc82:	0f 85 05 0a 00 00    	jne    0x7cd68d
7ccc88:	8b 6f 30             	mov    0x30(%edi),%ebp
7ccc8b:	8b 77 2c             	mov    0x2c(%edi),%esi
7ccc8e:	89 6c 24 20          	mov    %ebp,0x20(%esp)
7ccc92:	8a 3e                	mov    (%esi),%bh
7ccc94:	46                   	inc    %esi
7ccc95:	3b f5                	cmp    %ebp,%esi
7ccc97:	72 1b                	jb     0x7cccb4
7ccc99:	57                   	push   %edi
7ccc9a:	e8 f1 13 00 00       	call   0x7ce090
7ccc9f:	83 c4 04             	add    $0x4,%esp
7ccca2:	85 c0                	test   %eax,%eax
7ccca4:	0f 85 e3 09 00 00    	jne    0x7cd68d
7cccaa:	8b 6f 30             	mov    0x30(%edi),%ebp
7cccad:	8b 77 2c             	mov    0x2c(%edi),%esi
7cccb0:	89 6c 24 20          	mov    %ebp,0x20(%esp)
7cccb4:	8a 06                	mov    (%esi),%al
7cccb6:	b9 10 00 00 00       	mov    $0x10,%ecx
7cccbb:	0f b6 d7             	movzbl %bh,%edx
7cccbe:	46                   	inc    %esi
7cccbf:	c1 e2 08             	shl    $0x8,%edx
7cccc2:	0f b6 c0             	movzbl %al,%eax
7cccc5:	0b d0                	or     %eax,%edx
7cccc7:	0f b6 c3             	movzbl %bl,%eax
7cccca:	2b c8                	sub    %eax,%ecx
7ccccc:	80 c3 10             	add    $0x10,%bl
7ccccf:	d3 e2                	shl    %cl,%edx
7cccd1:	8b 4c 24 14          	mov    0x14(%esp),%ecx
7cccd5:	0b ca                	or     %edx,%ecx
7cccd7:	89 4c 24 14          	mov    %ecx,0x14(%esp)
7cccdb:	80 fb 01             	cmp    $0x1,%bl
7cccde:	72 93                	jb     0x7ccc73
7ccce0:	8b 54 24 24          	mov    0x24(%esp),%edx
7ccce4:	8b 44 24 1c          	mov    0x1c(%esp),%eax
7ccce8:	c1 e9 1f             	shr    $0x1f,%ecx
7ccceb:	03 c0                	add    %eax,%eax
7ccced:	0b c8                	or     %eax,%ecx
7cccef:	0f b7 c1             	movzwl %cx,%eax
7cccf2:	8b 4c 24 14          	mov    0x14(%esp),%ecx
7cccf6:	03 c9                	add    %ecx,%ecx
7cccf8:	89 44 24 1c          	mov    %eax,0x1c(%esp)
7cccfc:	fe cb                	dec    %bl
7cccfe:	89 4c 24 14          	mov    %ecx,0x14(%esp)
7ccd02:	88 5c 24 12          	mov    %bl,0x12(%esp)
7ccd06:	e9 15 ff ff ff       	jmp    0x7ccc20
7ccd0b:	8b 44 24 38          	mov    0x38(%esp),%eax
7ccd0f:	c7 44 24 2c 00 00 00 	movl   $0x0,0x2c(%esp)
7ccd16:	00
7ccd17:	8a 90 90 c3 c2 00    	mov    0xc2c390(%eax),%dl
7ccd1d:	88 54 24 13          	mov    %dl,0x13(%esp)
7ccd21:	84 d2                	test   %dl,%dl
7ccd23:	0f 84 bf 00 00 00    	je     0x7ccde8
7ccd29:	0f 1f 80 00 00 00 00 	nopl   0x0(%eax)
7ccd30:	80 fb 10             	cmp    $0x10,%bl
7ccd33:	77 6a                	ja     0x7ccd9f
7ccd35:	3b f5                	cmp    %ebp,%esi
7ccd37:	72 1b                	jb     0x7ccd54
7ccd39:	57                   	push   %edi
7ccd3a:	e8 51 13 00 00       	call   0x7ce090
7ccd3f:	83 c4 04             	add    $0x4,%esp
7ccd42:	85 c0                	test   %eax,%eax
7ccd44:	0f 85 43 09 00 00    	jne    0x7cd68d
7ccd4a:	8b 6f 30             	mov    0x30(%edi),%ebp
7ccd4d:	8b 77 2c             	mov    0x2c(%edi),%esi
7ccd50:	89 6c 24 20          	mov    %ebp,0x20(%esp)
7ccd54:	8a 3e                	mov    (%esi),%bh
7ccd56:	46                   	inc    %esi
7ccd57:	3b f5                	cmp    %ebp,%esi
7ccd59:	72 1b                	jb     0x7ccd76
7ccd5b:	57                   	push   %edi
7ccd5c:	e8 2f 13 00 00       	call   0x7ce090
7ccd61:	83 c4 04             	add    $0x4,%esp
7ccd64:	85 c0                	test   %eax,%eax
7ccd66:	0f 85 21 09 00 00    	jne    0x7cd68d
7ccd6c:	8b 6f 30             	mov    0x30(%edi),%ebp
7ccd6f:	8b 77 2c             	mov    0x2c(%edi),%esi
7ccd72:	89 6c 24 20          	mov    %ebp,0x20(%esp)
7ccd76:	8a 06                	mov    (%esi),%al
7ccd78:	b9 10 00 00 00       	mov    $0x10,%ecx
7ccd7d:	0f b6 d7             	movzbl %bh,%edx
7ccd80:	46                   	inc    %esi
7ccd81:	c1 e2 08             	shl    $0x8,%edx
7ccd84:	0f b6 c0             	movzbl %al,%eax
7ccd87:	0b d0                	or     %eax,%edx
7ccd89:	0f b6 c3             	movzbl %bl,%eax
7ccd8c:	2b c8                	sub    %eax,%ecx
7ccd8e:	d3 e2                	shl    %cl,%edx
7ccd90:	09 54 24 14          	or     %edx,0x14(%esp)
7ccd94:	80 c3 10             	add    $0x10,%bl
7ccd97:	8a 54 24 13          	mov    0x13(%esp),%dl
7ccd9b:	88 5c 24 12          	mov    %bl,0x12(%esp)
7ccd9f:	38 54 24 12          	cmp    %dl,0x12(%esp)
7ccda3:	b9 20 00 00 00       	mov    $0x20,%ecx
7ccda8:	0f b6 44 24 12       	movzbl 0x12(%esp),%eax
7ccdad:	0f b6 da             	movzbl %dl,%ebx
7ccdb0:	0f 42 d8             	cmovb  %eax,%ebx
7ccdb3:	8b 44 24 14          	mov    0x14(%esp),%eax
7ccdb7:	28 5c 24 12          	sub    %bl,0x12(%esp)
7ccdbb:	0f b6 d3             	movzbl %bl,%edx
7ccdbe:	2b ca                	sub    %edx,%ecx
7ccdc0:	d3 e8                	shr    %cl,%eax
7ccdc2:	8b ca                	mov    %edx,%ecx
7ccdc4:	d3 64 24 2c          	shll   %cl,0x2c(%esp)
7ccdc8:	8a 54 24 13          	mov    0x13(%esp),%dl
7ccdcc:	09 44 24 2c          	or     %eax,0x2c(%esp)
7ccdd0:	d3 64 24 14          	shll   %cl,0x14(%esp)
7ccdd4:	2a d3                	sub    %bl,%dl
7ccdd6:	8a 5c 24 12          	mov    0x12(%esp),%bl
7ccdda:	88 54 24 13          	mov    %dl,0x13(%esp)
7ccdde:	0f 85 4c ff ff ff    	jne    0x7ccd30
7ccde4:	8b 44 24 38          	mov    0x38(%esp),%eax
7ccde8:	8b 14 85 e8 c2 c2 00 	mov    0xc2c2e8(,%eax,4),%edx
7ccdef:	8b 44 24 30          	mov    0x30(%esp),%eax
7ccdf3:	e9 c0 05 00 00       	jmp    0x7cd3b8
7ccdf8:	0f b7 c8             	movzwl %ax,%ecx
7ccdfb:	8b 87 8c 00 00 00    	mov    0x8c(%edi),%eax
7cce01:	0f b7 d2             	movzwl %dx,%edx
7cce04:	2b d1                	sub    %ecx,%edx
7cce06:	89 54 24 48          	mov    %edx,0x48(%esp)
7cce0a:	0f b7 40 02          	movzwl 0x2(%eax),%eax
7cce0e:	89 44 24 40          	mov    %eax,0x40(%esp)
7cce12:	8b 44 24 1c          	mov    0x1c(%esp),%eax
7cce16:	0f b7 c0             	movzwl %ax,%eax
7cce19:	2b c1                	sub    %ecx,%eax
7cce1b:	0f b7 ca             	movzwl %dx,%ecx
7cce1e:	40                   	inc    %eax
7cce1f:	33 d2                	xor    %edx,%edx
7cce21:	0f af 44 24 40       	imul   0x40(%esp),%eax
7cce26:	41                   	inc    %ecx
7cce27:	48                   	dec    %eax
7cce28:	f7 f1                	div    %ecx
7cce2a:	8b 97 88 00 00 00    	mov    0x88(%edi),%edx
7cce30:	0f b7 c0             	movzwl %ax,%eax
7cce33:	89 44 24 4c          	mov    %eax,0x4c(%esp)
7cce37:	b8 01 00 00 00       	mov    $0x1,%eax
7cce3c:	89 44 24 30          	mov    %eax,0x30(%esp)
7cce40:	3b d0                	cmp    %eax,%edx
7cce42:	7e 22                	jle    0x7cce66
7cce44:	8b 8f 8c 00 00 00    	mov    0x8c(%edi),%ecx
7cce4a:	8b 7c 24 4c          	mov    0x4c(%esp),%edi
7cce4e:	83 c1 06             	add    $0x6,%ecx
7cce51:	66 39 39             	cmp    %di,(%ecx)
7cce54:	76 08                	jbe    0x7cce5e
7cce56:	40                   	inc    %eax
7cce57:	83 c1 04             	add    $0x4,%ecx
7cce5a:	3b c2                	cmp    %edx,%eax
7cce5c:	7c f3                	jl     0x7cce51
7cce5e:	8b 7c 24 54          	mov    0x54(%esp),%edi
7cce62:	89 44 24 30          	mov    %eax,0x30(%esp)
7cce66:	8b 97 8c 00 00 00    	mov    0x8c(%edi),%edx
7cce6c:	0f b7 4c 82 fc       	movzwl -0x4(%edx,%eax,4),%ecx
7cce71:	0f b7 44 82 fe       	movzwl -0x2(%edx,%eax,4),%eax
7cce76:	33 d2                	xor    %edx,%edx
7cce78:	89 4c 24 38          	mov    %ecx,0x38(%esp)
7cce7c:	8b 4c 24 48          	mov    0x48(%esp),%ecx
7cce80:	41                   	inc    %ecx
7cce81:	0f af c1             	imul   %ecx,%eax
7cce84:	f7 74 24 40          	divl   0x40(%esp)
7cce88:	8b 54 24 18          	mov    0x18(%esp),%edx
7cce8c:	4a                   	dec    %edx
7cce8d:	03 c2                	add    %edx,%eax
7cce8f:	8b 97 8c 00 00 00    	mov    0x8c(%edi),%edx
7cce95:	0f b7 c0             	movzwl %ax,%eax
7cce98:	89 44 24 24          	mov    %eax,0x24(%esp)
7cce9c:	8b 44 24 30          	mov    0x30(%esp),%eax
7ccea0:	0f b7 44 82 02       	movzwl 0x2(%edx,%eax,4),%eax
7ccea5:	33 d2                	xor    %edx,%edx
7ccea7:	0f af c1             	imul   %ecx,%eax
7cceaa:	8b 4c 24 30          	mov    0x30(%esp),%ecx
7cceae:	f7 74 24 40          	divl   0x40(%esp)
7cceb2:	01 44 24 18          	add    %eax,0x18(%esp)
7cceb6:	66 66 0f 1f 84 00 00 	data16 nopw 0x0(%eax,%eax,1)
7ccebd:	00 00 00
7ccec0:	8b 87 8c 00 00 00    	mov    0x8c(%edi),%eax
7ccec6:	49                   	dec    %ecx
7ccec7:	66 83 44 88 02 08    	addw   $0x8,0x2(%eax,%ecx,4)
7ccecd:	85 c9                	test   %ecx,%ecx
7ccecf:	7f ef                	jg     0x7ccec0
7cced1:	8b 87 8c 00 00 00    	mov    0x8c(%edi),%eax
7cced7:	b9 d8 0e 00 00       	mov    $0xed8,%ecx
7ccedc:	66 39 48 02          	cmp    %cx,0x2(%eax)
7ccee0:	76 0f                	jbe    0x7ccef1
7ccee2:	8d 87 84 00 00 00    	lea    0x84(%edi),%eax
7ccee8:	50                   	push   %eax
7ccee9:	e8 82 10 00 00       	call   0x7cdf70
7cceee:	83 c4 04             	add    $0x4,%esp
7ccef1:	8b 4c 24 14          	mov    0x14(%esp),%ecx
7ccef5:	8b 54 24 24          	mov    0x24(%esp),%edx
7ccef9:	0f 1f 80 00 00 00 00 	nopl   0x0(%eax)
7ccf00:	8b 44 24 18          	mov    0x18(%esp),%eax
7ccf04:	33 c2                	xor    %edx,%eax
7ccf06:	a9 00 80 00 00       	test   $0x8000,%eax
7ccf0b:	8b 44 24 18          	mov    0x18(%esp),%eax
7ccf0f:	74 2a                	je     0x7ccf3b
7ccf11:	a9 00 40 00 00       	test   $0x4000,%eax
7ccf16:	0f 84 cf 00 00 00    	je     0x7ccfeb
7ccf1c:	f7 c2 00 40 00 00    	test   $0x4000,%edx
7ccf22:	0f 85 c3 00 00 00    	jne    0x7ccfeb
7ccf28:	81 74 24 1c 00 40 00 	xorl   $0x4000,0x1c(%esp)
7ccf2f:	00
7ccf30:	25 ff 3f 00 00       	and    $0x3fff,%eax
7ccf35:	81 ca 00 40 00 00    	or     $0x4000,%edx
7ccf3b:	03 c0                	add    %eax,%eax
7ccf3d:	89 44 24 18          	mov    %eax,0x18(%esp)
7ccf41:	8d 04 12             	lea    (%edx,%edx,1),%eax
7ccf44:	83 c8 01             	or     $0x1,%eax
7ccf47:	0f b7 d0             	movzwl %ax,%edx
7ccf4a:	89 54 24 24          	mov    %edx,0x24(%esp)
7ccf4e:	80 fb 01             	cmp    $0x1,%bl
7ccf51:	73 71                	jae    0x7ccfc4
7ccf53:	3b f5                	cmp    %ebp,%esi
7ccf55:	72 1b                	jb     0x7ccf72
7ccf57:	57                   	push   %edi
7ccf58:	e8 33 11 00 00       	call   0x7ce090
7ccf5d:	83 c4 04             	add    $0x4,%esp
7ccf60:	85 c0                	test   %eax,%eax
7ccf62:	0f 85 25 07 00 00    	jne    0x7cd68d
7ccf68:	8b 6f 30             	mov    0x30(%edi),%ebp
7ccf6b:	8b 77 2c             	mov    0x2c(%edi),%esi
7ccf6e:	89 6c 24 20          	mov    %ebp,0x20(%esp)
7ccf72:	8a 3e                	mov    (%esi),%bh
7ccf74:	46                   	inc    %esi
7ccf75:	3b f5                	cmp    %ebp,%esi
7ccf77:	72 1b                	jb     0x7ccf94
7ccf79:	57                   	push   %edi
7ccf7a:	e8 11 11 00 00       	call   0x7ce090
7ccf7f:	83 c4 04             	add    $0x4,%esp
7ccf82:	85 c0                	test   %eax,%eax
7ccf84:	0f 85 03 07 00 00    	jne    0x7cd68d
7ccf8a:	8b 6f 30             	mov    0x30(%edi),%ebp
7ccf8d:	8b 77 2c             	mov    0x2c(%edi),%esi
7ccf90:	89 6c 24 20          	mov    %ebp,0x20(%esp)
7ccf94:	8a 06                	mov    (%esi),%al
7ccf96:	b9 10 00 00 00       	mov    $0x10,%ecx
7ccf9b:	0f b6 d7             	movzbl %bh,%edx
7ccf9e:	46                   	inc    %esi
7ccf9f:	c1 e2 08             	shl    $0x8,%edx
7ccfa2:	0f b6 c0             	movzbl %al,%eax
7ccfa5:	0b d0                	or     %eax,%edx
7ccfa7:	0f b6 c3             	movzbl %bl,%eax
7ccfaa:	2b c8                	sub    %eax,%ecx
7ccfac:	80 c3 10             	add    $0x10,%bl
7ccfaf:	d3 e2                	shl    %cl,%edx
7ccfb1:	8b 4c 24 14          	mov    0x14(%esp),%ecx
7ccfb5:	0b ca                	or     %edx,%ecx
7ccfb7:	89 4c 24 14          	mov    %ecx,0x14(%esp)
7ccfbb:	80 fb 01             	cmp    $0x1,%bl
7ccfbe:	72 93                	jb     0x7ccf53
7ccfc0:	8b 54 24 24          	mov    0x24(%esp),%edx
7ccfc4:	8b 44 24 1c          	mov    0x1c(%esp),%eax
7ccfc8:	c1 e9 1f             	shr    $0x1f,%ecx
7ccfcb:	03 c0                	add    %eax,%eax
7ccfcd:	0b c8                	or     %eax,%ecx
7ccfcf:	0f b7 c1             	movzwl %cx,%eax
7ccfd2:	8b 4c 24 14          	mov    0x14(%esp),%ecx
7ccfd6:	03 c9                	add    %ecx,%ecx
7ccfd8:	89 44 24 1c          	mov    %eax,0x1c(%esp)
7ccfdc:	fe cb                	dec    %bl
7ccfde:	89 4c 24 14          	mov    %ecx,0x14(%esp)
7ccfe2:	88 5c 24 12          	mov    %bl,0x12(%esp)
7ccfe6:	e9 15 ff ff ff       	jmp    0x7ccf00
7ccfeb:	8b 44 24 38          	mov    0x38(%esp),%eax
7ccfef:	c7 44 24 2c 00 00 00 	movl   $0x0,0x2c(%esp)
7ccff6:	00
7ccff7:	8a 90 90 c3 c2 00    	mov    0xc2c390(%eax),%dl
7ccffd:	88 54 24 13          	mov    %dl,0x13(%esp)
7cd001:	84 d2                	test   %dl,%dl
7cd003:	0f 84 bf 00 00 00    	je     0x7cd0c8
7cd009:	0f 1f 80 00 00 00 00 	nopl   0x0(%eax)