4cac32:	6a 00                	push   $0x0
4cac34:	8b c3                	mov    %ebx,%eax
4cac36:	e8 85 e0 f5 ff       	call   0x428cc0
4cac3b:	50                   	push   %eax
4cac3c:	e8 3f cb f3 ff       	call   0x407780
4cac41:	68 ff ff ff 00       	push   $0xffffff
4cac46:	8b c3                	mov    %ebx,%eax
4cac48:	e8 73 e0 f5 ff       	call   0x428cc0
4cac4d:	50                   	push   %eax
4cac4e:	e8 c5 ca f3 ff       	call   0x407718
4cac53:	68 46 07 e2 00       	push   $0xe20746
4cac58:	6a 00                	push   $0x0
4cac5a:	6a 00                	push   $0x0
4cac5c:	8b c6                	mov    %esi,%eax
4cac5e:	e8 35 2b f6 ff       	call   0x42d798
4cac63:	e8 58 e0 f5 ff       	call   0x428cc0
4cac68:	50                   	push   %eax
4cac69:	a1 00 b3 6a 00       	mov    0x6ab300,%eax
4cac6e:	8b 40 30             	mov    0x30(%eax),%eax
4cac71:	50                   	push   %eax
4cac72:	a1 00 b3 6a 00       	mov    0x6ab300,%eax
4cac77:	8b 40 34             	mov    0x34(%eax),%eax
4cac7a:	50                   	push   %eax
4cac7b:	8b 45 f4             	mov    -0xc(%ebp),%eax
4cac7e:	50                   	push   %eax
4cac7f:	57                   	push   %edi
4cac80:	8b c3                	mov    %ebx,%eax
4cac82:	e8 39 e0 f5 ff       	call   0x428cc0
4cac87:	50                   	push   %eax
4cac88:	e8 ab c7 f3 ff       	call   0x407438
4cac8d:	8b c6                	mov    %esi,%eax
4cac8f:	e8 e4 8d f3 ff       	call   0x403a78
4cac94:	5f                   	pop    %edi
4cac95:	5e                   	pop    %esi
4cac96:	5b                   	pop    %ebx
4cac97:	8b e5                	mov    %ebp,%esp
4cac99:	5d                   	pop    %ebp
4cac9a:	c2 08 00             	ret    $0x8
4cac9d:	8d 40 00             	lea    0x0(%eax),%eax
4caca0:	55                   	push   %ebp
4caca1:	8b ec                	mov    %esp,%ebp
4caca3:	83 c4 ec             	add    $0xffffffec,%esp
4caca6:	53                   	push   %ebx
4caca7:	56                   	push   %esi
4caca8:	57                   	push   %edi
4caca9:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4cacac:	8b fa                	mov    %edx,%edi
4cacae:	8b f0                	mov    %eax,%esi
4cacb0:	8b 5d 08             	mov    0x8(%ebp),%ebx
4cacb3:	8b 45 fc             	mov    -0x4(%ebp),%eax
4cacb6:	56                   	push   %esi
4cacb7:	57                   	push   %edi
4cacb8:	8b f0                	mov    %eax,%esi
4cacba:	8d 7d ec             	lea    -0x14(%ebp),%edi
4cacbd:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4cacbe:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4cacbf:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4cacc0:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4cacc1:	5f                   	pop    %edi
4cacc2:	5e                   	pop    %esi
4cacc3:	8b 03                	mov    (%ebx),%eax
4cacc5:	25 04 20 00 00       	and    $0x2004,%eax
4cacca:	3d 04 20 00 00       	cmp    $0x2004,%eax
4caccf:	74 31                	je     0x4cad02
4cacd1:	8b 43 1c             	mov    0x1c(%ebx),%eax
4cacd4:	03 45 ec             	add    -0x14(%ebp),%eax
4cacd7:	83 c0 02             	add    $0x2,%eax
4cacda:	89 45 f4             	mov    %eax,-0xc(%ebp)
4cacdd:	a1 0c b3 6a 00       	mov    0x6ab30c,%eax
4cace2:	50                   	push   %eax
4cace3:	6a 00                	push   $0x0
4cace5:	8d 55 ec             	lea    -0x14(%ebp),%edx
4cace8:	8b 0d 08 b3 6a 00    	mov    0x6ab308,%ecx
4cacee:	8b c7                	mov    %edi,%eax
4cacf0:	e8 f3 33 ff ff       	call   0x4be0e8
4cacf5:	ff 45 ec             	incl   -0x14(%ebp)
4cacf8:	8b 45 fc             	mov    -0x4(%ebp),%eax
4cacfb:	8b 40 08             	mov    0x8(%eax),%eax
4cacfe:	48                   	dec    %eax
4cacff:	89 45 f4             	mov    %eax,-0xc(%ebp)
4cad02:	53                   	push   %ebx
4cad03:	8d 4d ec             	lea    -0x14(%ebp),%ecx
4cad06:	8b d7                	mov    %edi,%edx
4cad08:	8b c6                	mov    %esi,%eax
4cad0a:	8b 18                	mov    (%eax),%ebx
4cad0c:	ff 53 54             	call   *0x54(%ebx)
4cad0f:	5f                   	pop    %edi
4cad10:	5e                   	pop    %esi
4cad11:	5b                   	pop    %ebx
4cad12:	8b e5                	mov    %ebp,%esp
4cad14:	5d                   	pop    %ebp
4cad15:	c2 04 00             	ret    $0x4
4cad18:	55                   	push   %ebp
4cad19:	8b ec                	mov    %esp,%ebp
4cad1b:	83 c4 d0             	add    $0xffffffd0,%esp
4cad1e:	53                   	push   %ebx
4cad1f:	8b d8                	mov    %eax,%ebx
4cad21:	8b 45 08             	mov    0x8(%ebp),%eax
4cad24:	8b 40 fc             	mov    -0x4(%eax),%eax
4cad27:	8b 40 10             	mov    0x10(%eax),%eax
4cad2a:	8b d3                	mov    %ebx,%edx
4cad2c:	e8 53 d2 f5 ff       	call   0x427f84
4cad31:	8b 45 08             	mov    0x8(%ebp),%eax
4cad34:	8b 40 fc             	mov    -0x4(%eax),%eax
4cad37:	8b 40 14             	mov    0x14(%eax),%eax
4cad3a:	8b d3                	mov    %ebx,%edx
4cad3c:	e8 43 d5 f5 ff       	call   0x428284
4cad41:	8d 4d e0             	lea    -0x20(%ebp),%ecx
4cad44:	8b 45 08             	mov    0x8(%ebp),%eax
4cad47:	8b 50 f4             	mov    -0xc(%eax),%edx
4cad4a:	83 ea 03             	sub    $0x3,%edx
4cad4d:	8b 45 08             	mov    0x8(%ebp),%eax
4cad50:	8b 40 f8             	mov    -0x8(%eax),%eax
4cad53:	e8 f4 f8 f4 ff       	call   0x41a64c
4cad58:	8b 45 e0             	mov    -0x20(%ebp),%eax
4cad5b:	89 45 e8             	mov    %eax,-0x18(%ebp)
4cad5e:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4cad61:	89 45 ec             	mov    %eax,-0x14(%ebp)
4cad64:	8d 4d d8             	lea    -0x28(%ebp),%ecx
4cad67:	8b 45 08             	mov    0x8(%ebp),%eax
4cad6a:	8b 50 f4             	mov    -0xc(%eax),%edx
4cad6d:	83 c2 03             	add    $0x3,%edx
4cad70:	8b 45 08             	mov    0x8(%ebp),%eax
4cad73:	8b 40 f8             	mov    -0x8(%eax),%eax
4cad76:	e8 d1 f8 f4 ff       	call   0x41a64c
4cad7b:	8b 45 d8             	mov    -0x28(%ebp),%eax
4cad7e:	89 45 f0             	mov    %eax,-0x10(%ebp)
4cad81:	8b 45 dc             	mov    -0x24(%ebp),%eax
4cad84:	89 45 f4             	mov    %eax,-0xc(%ebp)
4cad87:	8d 4d d0             	lea    -0x30(%ebp),%ecx
4cad8a:	8b 45 08             	mov    0x8(%ebp),%eax
4cad8d:	8b 50 f4             	mov    -0xc(%eax),%edx
4cad90:	8b 45 08             	mov    0x8(%ebp),%eax
4cad93:	8b 40 f8             	mov    -0x8(%eax),%eax
4cad96:	83 c0 03             	add    $0x3,%eax
4cad99:	e8 ae f8 f4 ff       	call   0x41a64c
4cad9e:	8b 45 d0             	mov    -0x30(%ebp),%eax
4cada1:	89 45 f8             	mov    %eax,-0x8(%ebp)
4cada4:	8b 45 d4             	mov    -0x2c(%ebp),%eax
4cada7:	89 45 fc             	mov    %eax,-0x4(%ebp)
4cadaa:	8d 55 e8             	lea    -0x18(%ebp),%edx
4cadad:	8b 45 08             	mov    0x8(%ebp),%eax
4cadb0:	8b 40 fc             	mov    -0x4(%eax),%eax
4cadb3:	b9 02 00 00 00       	mov    $0x2,%ecx
4cadb8:	e8 43 da f5 ff       	call   0x428800
4cadbd:	5b                   	pop    %ebx
4cadbe:	8b e5                	mov    %ebp,%esp
4cadc0:	5d                   	pop    %ebp
4cadc1:	c3                   	ret
4cadc2:	8b c0                	mov    %eax,%eax
4cadc4:	55                   	push   %ebp
4cadc5:	8b ec                	mov    %esp,%ebp
4cadc7:	83 c4 dc             	add    $0xffffffdc,%esp
4cadca:	53                   	push   %ebx
4cadcb:	56                   	push   %esi
4cadcc:	57                   	push   %edi
4cadcd:	89 4d f0             	mov    %ecx,-0x10(%ebp)
4cadd0:	89 55 fc             	mov    %edx,-0x4(%ebp)
4cadd3:	8b f0                	mov    %eax,%esi
4cadd5:	8b 5d 08             	mov    0x8(%ebp),%ebx
4cadd8:	6a 47                	push   $0x47
4cadda:	e8 41 cd f3 ff       	call   0x407b20
4caddf:	89 45 ec             	mov    %eax,-0x14(%ebp)
4cade2:	53                   	push   %ebx
4cade3:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4cade6:	8b 55 fc             	mov    -0x4(%ebp),%edx
4cade9:	8b c6                	mov    %esi,%eax
4cadeb:	8b 38                	mov    (%eax),%edi
4caded:	ff 57 64             	call   *0x64(%edi)
4cadf0:	8b d3                	mov    %ebx,%edx
4cadf2:	b1 01                	mov    $0x1,%cl
4cadf4:	8b c6                	mov    %esi,%eax
4cadf6:	e8 75 e4 ff ff       	call   0x4c9270
4cadfb:	8b f8                	mov    %eax,%edi
4cadfd:	8b 45 f0             	mov    -0x10(%ebp),%eax
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