4cae00:	56                   	push   %esi
4cae01:	57                   	push   %edi
4cae02:	8b f0                	mov    %eax,%esi
4cae04:	8d 7d dc             	lea    -0x24(%ebp),%edi
4cae07:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4cae08:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4cae09:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4cae0a:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4cae0b:	5f                   	pop    %edi
4cae0c:	5e                   	pop    %esi
4cae0d:	f6 43 04 08          	testb  $0x8,0x4(%ebx)
4cae11:	74 6e                	je     0x4cae81
4cae13:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4cae16:	2b 45 ec             	sub    -0x14(%ebp),%eax
4cae19:	48                   	dec    %eax
4cae1a:	89 45 f8             	mov    %eax,-0x8(%ebp)
4cae1d:	80 7b 08 00          	cmpb   $0x0,0x8(%ebx)
4cae21:	75 0f                	jne    0x4cae32
4cae23:	8b 45 fc             	mov    -0x4(%ebp),%eax
4cae26:	8b 40 10             	mov    0x10(%eax),%eax
4cae29:	8b d7                	mov    %edi,%edx
4cae2b:	e8 54 d1 f5 ff       	call   0x427f84
4cae30:	eb 31                	jmp    0x4cae63
4cae32:	80 7b 0a 02          	cmpb   $0x2,0xa(%ebx)
4cae36:	75 1a                	jne    0x4cae52
4cae38:	8b d3                	mov    %ebx,%edx
4cae3a:	b1 02                	mov    $0x2,%cl
4cae3c:	8b c6                	mov    %esi,%eax
4cae3e:	e8 2d e4 ff ff       	call   0x4c9270
4cae43:	8b d0                	mov    %eax,%edx
4cae45:	8b 45 fc             	mov    -0x4(%ebp),%eax
4cae48:	8b 40 10             	mov    0x10(%eax),%eax
4cae4b:	e8 34 d1 f5 ff       	call   0x427f84
4cae50:	eb 11                	jmp    0x4cae63
4cae52:	8b 45 fc             	mov    -0x4(%ebp),%eax
4cae55:	8b 40 10             	mov    0x10(%eax),%eax
4cae58:	8b 96 e4 00 00 00    	mov    0xe4(%esi),%edx
4cae5e:	e8 21 d1 f5 ff       	call   0x427f84
4cae63:	8b 4d e0             	mov    -0x20(%ebp),%ecx
4cae66:	41                   	inc    %ecx
4cae67:	8b 55 f8             	mov    -0x8(%ebp),%edx
4cae6a:	8b 45 fc             	mov    -0x4(%ebp),%eax
4cae6d:	e8 62 d9 f5 ff       	call   0x4287d4
4cae72:	8b 4d e8             	mov    -0x18(%ebp),%ecx
4cae75:	49                   	dec    %ecx
4cae76:	8b 55 f8             	mov    -0x8(%ebp),%edx
4cae79:	8b 45 fc             	mov    -0x4(%ebp),%eax
4cae7c:	e8 f3 d8 f5 ff       	call   0x428774
4cae81:	f6 43 04 04          	testb  $0x4,0x4(%ebx)
4cae85:	74 32                	je     0x4caeb9
4cae87:	8b 45 f0             	mov    -0x10(%ebp),%eax
4cae8a:	8b 40 0c             	mov    0xc(%eax),%eax
4cae8d:	d1 f8                	sar    $1,%eax
4cae8f:	79 03                	jns    0x4cae94
4cae91:	83 d0 00             	adc    $0x0,%eax
4cae94:	89 45 f4             	mov    %eax,-0xc(%ebp)
4cae97:	8b 45 ec             	mov    -0x14(%ebp),%eax
4cae9a:	03 c0                	add    %eax,%eax
4cae9c:	b9 03 00 00 00       	mov    $0x3,%ecx
4caea1:	99                   	cltd
4caea2:	f7 f9                	idiv   %ecx
4caea4:	8b 55 f0             	mov    -0x10(%ebp),%edx
4caea7:	8b 52 08             	mov    0x8(%edx),%edx
4caeaa:	2b d0                	sub    %eax,%edx
4caeac:	4a                   	dec    %edx
4caead:	89 55 f8             	mov    %edx,-0x8(%ebp)
4caeb0:	55                   	push   %ebp
4caeb1:	8b c7                	mov    %edi,%eax
4caeb3:	e8 60 fe ff ff       	call   0x4cad18
4caeb8:	59                   	pop    %ecx
4caeb9:	80 7b 0b 00          	cmpb   $0x0,0xb(%ebx)
4caebd:	74 6e                	je     0x4caf2d
4caebf:	80 7b 08 00          	cmpb   $0x0,0x8(%ebx)
4caec3:	74 68                	je     0x4caf2d
4caec5:	8b 45 f0             	mov    -0x10(%ebp),%eax
4caec8:	56                   	push   %esi
4caec9:	8b f0                	mov    %eax,%esi
4caecb:	8d 7d dc             	lea    -0x24(%ebp),%edi
4caece:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4caecf:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4caed0:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4caed1:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4caed2:	5e                   	pop    %esi
4caed3:	8b 45 f0             	mov    -0x10(%ebp),%eax
4caed6:	8b 00                	mov    (%eax),%eax
4caed8:	40                   	inc    %eax
4caed9:	89 45 dc             	mov    %eax,-0x24(%ebp)
4caedc:	8b 53 1c             	mov    0x1c(%ebx),%edx
4caedf:	03 d0                	add    %eax,%edx
4caee1:	89 55 e4             	mov    %edx,-0x1c(%ebp)
4caee4:	6a ff                	push   $0xffffffff
4caee6:	6a ff                	push   $0xffffffff
4caee8:	8d 45 dc             	lea    -0x24(%ebp),%eax
4caeeb:	50                   	push   %eax
4caeec:	e8 97 cc f3 ff       	call   0x407b88
4caef1:	6a 01                	push   $0x1
4caef3:	8b d3                	mov    %ebx,%edx
4caef5:	b1 02                	mov    $0x2,%cl
4caef7:	8b c6                	mov    %esi,%eax
4caef9:	e8 a2 e2 ff ff       	call   0x4c91a0
4caefe:	50                   	push   %eax
4caeff:	8b 45 fc             	mov    -0x4(%ebp),%eax
4caf02:	e8 b9 dd f5 ff       	call   0x428cc0
4caf07:	8d 55 dc             	lea    -0x24(%ebp),%edx
4caf0a:	59                   	pop    %ecx
4caf0b:	e8 1c df fb ff       	call   0x488e2c
4caf10:	8b d3                	mov    %ebx,%edx
4caf12:	33 c9                	xor    %ecx,%ecx
4caf14:	8b c6                	mov    %esi,%eax
4caf16:	e8 85 e2 ff ff       	call   0x4c91a0
4caf1b:	50                   	push   %eax
4caf1c:	8b 45 fc             	mov    -0x4(%ebp),%eax
4caf1f:	e8 9c dd f5 ff       	call   0x428cc0
4caf24:	8d 55 dc             	lea    -0x24(%ebp),%edx
4caf27:	59                   	pop    %ecx
4caf28:	e8 b7 de fb ff       	call   0x488de4
4caf2d:	5f                   	pop    %edi
4caf2e:	5e                   	pop    %esi
4caf2f:	5b                   	pop    %ebx
4caf30:	8b e5                	mov    %ebp,%esp
4caf32:	5d                   	pop    %ebp
4caf33:	c2 04 00             	ret    $0x4
4caf36:	8b c0                	mov    %eax,%eax
4caf38:	55                   	push   %ebp
4caf39:	8b ec                	mov    %esp,%ebp
4caf3b:	83 c4 e0             	add    $0xffffffe0,%esp
4caf3e:	53                   	push   %ebx
4caf3f:	56                   	push   %esi
4caf40:	57                   	push   %edi
4caf41:	8b f1                	mov    %ecx,%esi
4caf43:	8d 7d f0             	lea    -0x10(%ebp),%edi
4caf46:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4caf47:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4caf48:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4caf49:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4caf4a:	8b da                	mov    %edx,%ebx
4caf4c:	8b f0                	mov    %eax,%esi
4caf4e:	8b 7d 08             	mov    0x8(%ebp),%edi
4caf51:	8b 56 1c             	mov    0x1c(%esi),%edx
4caf54:	8b 43 14             	mov    0x14(%ebx),%eax
4caf57:	e8 28 d3 f5 ff       	call   0x428284
4caf5c:	8d 55 f0             	lea    -0x10(%ebp),%edx
4caf5f:	8b c3                	mov    %ebx,%eax
4caf61:	e8 d2 d7 f5 ff       	call   0x428738
4caf66:	6a ff                	push   $0xffffffff
4caf68:	6a ff                	push   $0xffffffff
4caf6a:	8d 45 f0             	lea    -0x10(%ebp),%eax
4caf6d:	50                   	push   %eax
4caf6e:	e8 15 cc f3 ff       	call   0x407b88
4caf73:	8b 56 10             	mov    0x10(%esi),%edx
4caf76:	8b 43 14             	mov    0x14(%ebx),%eax
4caf79:	e8 06 d3 f5 ff       	call   0x428284
4caf7e:	8d 55 f0             	lea    -0x10(%ebp),%edx
4caf81:	8b c3                	mov    %ebx,%eax
4caf83:	e8 74 d7 f5 ff       	call   0x4286fc
4caf88:	8d 47 08             	lea    0x8(%edi),%eax
4caf8b:	50                   	push   %eax
4caf8c:	e8 4f cc f3 ff       	call   0x407be0
4caf91:	85 c0                	test   %eax,%eax
4caf93:	0f 85 22 01 00 00    	jne    0x4cb0bb
4caf99:	56                   	push   %esi
4caf9a:	8d 77 08             	lea    0x8(%edi),%esi
4caf9d:	8d 7d e0             	lea    -0x20(%ebp),%edi
4cafa0:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4cafa1:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4cafa2:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4cafa3:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4cafa4:	5e                   	pop    %esi
4cafa5:	8d 45 e0             	lea    -0x20(%ebp),%eax
4cafa8:	50                   	push   %eax
4cafa9:	e8 32 cc f3 ff       	call   0x407be0
4cafae:	85 c0                	test   %eax,%eax
4cafb0:	0f 85 05 01 00 00    	jne    0x4cb0bb
4cafb6:	8b 56 0c             	mov    0xc(%esi),%edx
4cafb9:	8b 43 10             	mov    0x10(%ebx),%eax
4cafbc:	e8 c3 cf f5 ff       	call   0x427f84
4cafc1:	8b 45 ec             	mov    -0x14(%ebp),%eax
4cafc4:	3b 45 f4             	cmp    -0xc(%ebp),%eax
4cafc7:	75 38                	jne    0x4cb001
4cafc9:	8b 45 f0             	mov    -0x10(%ebp),%eax
4cafcc:	3b 45 e0             	cmp    -0x20(%ebp),%eax
4cafcf:	7c 04                	jl     0x4cafd5
4cafd1:	48                   	dec    %eax
4cafd2:	89 45 e0             	mov    %eax,-0x20(%ebp)
4cafd5:	8b 45 f8             	mov    -0x8(%ebp),%eax
4cafd8:	3b 45 e8             	cmp    -0x18(%ebp),%eax
4cafdb:	7f 04                	jg     0x4cafe1
4cafdd:	40                   	inc    %eax
4cafde:	89 45 e8             	mov    %eax,-0x18(%ebp)
4cafe1:	8b 75 ec             	mov    -0x14(%ebp),%esi
4cafe4:	4e                   	dec    %esi
4cafe5:	8b ce                	mov    %esi,%ecx
4cafe7:	8b 55 e0             	mov    -0x20(%ebp),%edx
4cafea:	42                   	inc    %edx
4cafeb:	8b c3                	mov    %ebx,%eax
4cafed:	e8 e2 d7 f5 ff       	call   0x4287d4
4caff2:	8b ce                	mov    %esi,%ecx
4caff4:	8b 55 e8             	mov    -0x18(%ebp),%edx
4caff7:	4a                   	dec    %edx
4caff8:	8b c3                	mov    %ebx,%eax
4caffa:	e8 75 d7 f5 ff       	call   0x428774
4cafff:	eb 3d                	jmp    0x4cb03e
4cb001:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4cb004:	3b 45 fc             	cmp    -0x4(%ebp),%eax
4cb007:	75 35                	jne    0x4cb03e
4cb009:	8b 45 f0             	mov    -0x10(%ebp),%eax
4cb00c:	3b 45 e0             	cmp    -0x20(%ebp),%eax
4cb00f:	7c 04                	jl     0x4cb015
4cb011:	48                   	dec    %eax
4cb012:	89 45 e0             	mov    %eax,-0x20(%ebp)
4cb015:	8b 45 f8             	mov    -0x8(%ebp),%eax
4cb018:	3b 45 e8             	cmp    -0x18(%ebp),%eax
4cb01b:	7f 04                	jg     0x4cb021
4cb01d:	40                   	inc    %eax
4cb01e:	89 45 e8             	mov    %eax,-0x18(%ebp)
4cb021:	8b 55 e0             	mov    -0x20(%ebp),%edx
4cb024:	42                   	inc    %edx
4cb025:	8b 75 e4             	mov    -0x1c(%ebp),%esi
4cb028:	8b ce                	mov    %esi,%ecx
4cb02a:	8b c3                	mov    %ebx,%eax
4cb02c:	e8 a3 d7 f5 ff       	call   0x4287d4
4cb031:	8b 55 e8             	mov    -0x18(%ebp),%edx
4cb034:	4a                   	dec    %edx
4cb035:	8b ce                	mov    %esi,%ecx
4cb037:	8b c3                	mov    %ebx,%eax
4cb039:	e8 36 d7 f5 ff       	call   0x428774
4cb03e:	8b 45 e8             	mov    -0x18(%ebp),%eax
4cb041:	3b 45 f0             	cmp    -0x10(%ebp),%eax
4cb044:	75 38                	jne    0x4cb07e
4cb046:	8b 45 f4             	mov    -0xc(%ebp),%eax
4cb049:	3b 45 e4             	cmp    -0x1c(%ebp),%eax
4cb04c:	7c 04                	jl     0x4cb052
4cb04e:	48                   	dec    %eax
4cb04f:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4cb052:	8b 45 fc             	mov    -0x4(%ebp),%eax
4cb055:	3b 45 ec             	cmp    -0x14(%ebp),%eax
4cb058:	7f 04                	jg     0x4cb05e
4cb05a:	40                   	inc    %eax
4cb05b:	89 45 ec             	mov    %eax,-0x14(%ebp)
4cb05e:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
4cb061:	41                   	inc    %ecx
4cb062:	8b 75 e8             	mov    -0x18(%ebp),%esi
4cb065:	4e                   	dec    %esi
4cb066:	8b d6                	mov    %esi,%edx
4cb068:	8b c3                	mov    %ebx,%eax
4cb06a:	e8 65 d7 f5 ff       	call   0x4287d4
4cb06f:	8b 4d ec             	mov    -0x14(%ebp),%ecx
4cb072:	49                   	dec    %ecx
4cb073:	8b d6                	mov    %esi,%edx
4cb075:	8b c3                	mov    %ebx,%eax
4cb077:	e8 f8 d6 f5 ff       	call   0x428774
4cb07c:	eb 3d                	jmp    0x4cb0bb
4cb07e:	8b 45 e0             	mov    -0x20(%ebp),%eax
4cb081:	3b 45 f8             	cmp    -0x8(%ebp),%eax
4cb084:	75 35                	jne    0x4cb0bb
4cb086:	8b 45 f4             	mov    -0xc(%ebp),%eax
4cb089:	3b 45 e4             	cmp    -0x1c(%ebp),%eax
4cb08c:	7c 04                	jl     0x4cb092
4cb08e:	48                   	dec    %eax
4cb08f:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4cb092:	8b 45 fc             	mov    -0x4(%ebp),%eax
4cb095:	3b 45 ec             	cmp    -0x14(%ebp),%eax
4cb098:	7f 04                	jg     0x4cb09e
4cb09a:	40                   	inc    %eax
4cb09b:	89 45 ec             	mov    %eax,-0x14(%ebp)
4cb09e:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
4cb0a1:	41                   	inc    %ecx
4cb0a2:	8b 75 e0             	mov    -0x20(%ebp),%esi
4cb0a5:	8b d6                	mov    %esi,%edx
4cb0a7:	8b c3                	mov    %ebx,%eax
4cb0a9:	e8 26 d7 f5 ff       	call   0x4287d4
4cb0ae:	8b 4d ec             	mov    -0x14(%ebp),%ecx
4cb0b1:	49                   	dec    %ecx
4cb0b2:	8b d6                	mov    %esi,%edx
4cb0b4:	8b c3                	mov    %ebx,%eax
4cb0b6:	e8 b9 d6 f5 ff       	call   0x428774
4cb0bb:	5f                   	pop    %edi
4cb0bc:	5e                   	pop    %esi
4cb0bd:	5b                   	pop    %ebx
4cb0be:	8b e5                	mov    %ebp,%esp
4cb0c0:	5d                   	pop    %ebp
4cb0c1:	c2 04 00             	ret    $0x4
4cb0c4:	55                   	push   %ebp
4cb0c5:	8b ec                	mov    %esp,%ebp
4cb0c7:	83 c4 b8             	add    $0xffffffb8,%esp
4cb0ca:	53                   	push   %ebx
4cb0cb:	56                   	push   %esi
4cb0cc:	57                   	push   %edi
4cb0cd:	8b 75 10             	mov    0x10(%ebp),%esi
4cb0d0:	8d 7d c8             	lea    -0x38(%ebp),%edi
4cb0d3:	51                   	push   %ecx
4cb0d4:	b9 0a 00 00 00       	mov    $0xa,%ecx
4cb0d9:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
4cb0db:	59                   	pop    %ecx
4cb0dc:	8b f1                	mov    %ecx,%esi
4cb0de:	8d 7d f0             	lea    -0x10(%ebp),%edi
4cb0e1:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4cb0e2:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4cb0e3:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4cb0e4:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4cb0e5:	8b da                	mov    %edx,%ebx
4cb0e7:	8b f0                	mov    %eax,%esi
4cb0e9:	80 7d 0c 00          	cmpb   $0x0,0xc(%ebp)
4cb0ed:	0f 84 17 01 00 00    	je     0x4cb20a
4cb0f3:	8b 45 c8             	mov    -0x38(%ebp),%eax
4cb0f6:	25 04 20 00 00       	and    $0x2004,%eax
4cb0fb:	3d 04 20 00 00       	cmp    $0x2004,%eax
4cb100:	0f 94 c0             	sete   %al
4cb103:	f6 45 cc 01          	testb  $0x1,-0x34(%ebp)
4cb107:	75 55                	jne    0x4cb15e
4cb109:	84 c0                	test   %al,%al
4cb10b:	75 51                	jne    0x4cb15e
4cb10d:	56                   	push   %esi
4cb10e:	8d 75 f0             	lea    -0x10(%ebp),%esi
4cb111:	8d 7d b8             	lea    -0x48(%ebp),%edi
4cb114:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4cb115:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4cb116:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4cb117:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4cb118:	5e                   	pop    %esi
4cb119:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4cb11c:	83 c0 02             	add    $0x2,%eax
4cb11f:	89 45 c0             	mov    %eax,-0x40(%ebp)
4cb122:	8b 56 0c             	mov    0xc(%esi),%edx
4cb125:	8b 43 14             	mov    0x14(%ebx),%eax
4cb128:	e8 57 d1 f5 ff       	call   0x428284
4cb12d:	a1 0c b3 6a 00       	mov    0x6ab30c,%eax
4cb132:	50                   	push   %eax
4cb133:	6a 00                	push   $0x0
4cb135:	8d 55 b8             	lea    -0x48(%ebp),%edx
4cb138:	8b 0d 08 b3 6a 00    	mov    0x6ab308,%ecx
4cb13e:	8b c3                	mov    %ebx,%eax
4cb140:	e8 a3 2f ff ff       	call   0x4be0e8
4cb145:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4cb148:	83 c0 09             	add    $0x9,%eax
4cb14b:	01 45 f0             	add    %eax,-0x10(%ebp)
4cb14e:	8b 96 e4 00 00 00    	mov    0xe4(%esi),%edx
4cb154:	8b 43 10             	mov    0x10(%ebx),%eax
4cb157:	e8 28 ce f5 ff       	call   0x427f84
4cb15c:	eb 0e                	jmp    0x4cb16c
4cb15e:	8b 96 e8 00 00 00    	mov    0xe8(%esi),%edx
4cb164:	8b 43 10             	mov    0x10(%ebx),%eax
4cb167:	e8 18 ce f5 ff       	call   0x427f84
4cb16c:	8b 45 c8             	mov    -0x38(%ebp),%eax
4cb16f:	25 00 10 00 00       	and    $0x1000,%eax
4cb174:	3d 00 10 00 00       	cmp    $0x1000,%eax
4cb179:	75 67                	jne    0x4cb1e2
4cb17b:	8b 45 fc             	mov    -0x4(%ebp),%eax
4cb17e:	d1 f8                	sar    $1,%eax
4cb180:	79 03                	jns    0x4cb185