41aaf0:	83 c0 04             	add    $0x4,%eax
41aaf3:	83 c1 04             	add    $0x4,%ecx
41aaf6:	66 85 f6             	test   %si,%si
41aaf9:	75 de                	jne    0x41aad9
41aafb:	33 c0                	xor    %eax,%eax
41aafd:	eb 05                	jmp    0x41ab04
41aaff:	1b c0                	sbb    %eax,%eax
41ab01:	83 c8 01             	or     $0x1,%eax
41ab04:	85 c0                	test   %eax,%eax
41ab06:	74 6b                	je     0x41ab73
41ab08:	b8 7c 3d 40 00       	mov    $0x403d7c,%eax
41ab0d:	66 8b 0a             	mov    (%edx),%cx
41ab10:	66 3b 08             	cmp    (%eax),%cx
41ab13:	75 1e                	jne    0x41ab33
41ab15:	66 85 c9             	test   %cx,%cx
41ab18:	74 15                	je     0x41ab2f
41ab1a:	66 8b 4a 02          	mov    0x2(%edx),%cx
41ab1e:	66 3b 48 02          	cmp    0x2(%eax),%cx
41ab22:	75 0f                	jne    0x41ab33
41ab24:	83 c2 04             	add    $0x4,%edx
41ab27:	83 c0 04             	add    $0x4,%eax
41ab2a:	66 85 c9             	test   %cx,%cx
41ab2d:	75 de                	jne    0x41ab0d
41ab2f:	33 c0                	xor    %eax,%eax
41ab31:	eb 05                	jmp    0x41ab38
41ab33:	1b c0                	sbb    %eax,%eax
41ab35:	83 c8 01             	or     $0x1,%eax
41ab38:	85 c0                	test   %eax,%eax
41ab3a:	74 37                	je     0x41ab73
41ab3c:	be 01 40 00 80       	mov    $0x80004001,%esi
41ab41:	a1 00 b0 42 00       	mov    0x42b000,%eax
41ab46:	3d 00 b0 42 00       	cmp    $0x42b000,%eax
41ab4b:	0f 84 4c 01 00 00    	je     0x41ac9d
41ab51:	f6 40 1c 01          	testb  $0x1,0x1c(%eax)
41ab55:	0f 84 42 01 00 00    	je     0x41ac9d
41ab5b:	ff 70 14             	push   0x14(%eax)
41ab5e:	ba 64 49 40 00       	mov    $0x404964,%edx
41ab63:	ff 70 10             	push   0x10(%eax)
41ab66:	6a 0b                	push   $0xb
41ab68:	59                   	pop    %ecx
41ab69:	e8 42 c8 fe ff       	call   0x4073b0
41ab6e:	e9 2a 01 00 00       	jmp    0x41ac9d
41ab73:	8b 8b 80 00 00 00    	mov    0x80(%ebx),%ecx
41ab79:	8b c1                	mov    %ecx,%eax
41ab7b:	83 f9 01             	cmp    $0x1,%ecx
41ab7e:	74 10                	je     0x41ab90
41ab80:	83 f9 02             	cmp    $0x2,%ecx
41ab83:	74 0b                	je     0x41ab90
41ab85:	e8 b0 b7 00 00       	call   0x42633a
41ab8a:	8b 83 80 00 00 00    	mov    0x80(%ebx),%eax
41ab90:	83 f8 01             	cmp    $0x1,%eax
41ab93:	75 54                	jne    0x41abe9
41ab95:	83 bb 88 00 00 00 00 	cmpl   $0x0,0x88(%ebx)
41ab9c:	75 05                	jne    0x41aba3
41ab9e:	e8 97 b7 00 00       	call   0x42633a
41aba3:	83 bb a0 00 00 00 00 	cmpl   $0x0,0xa0(%ebx)
41abaa:	75 05                	jne    0x41abb1
41abac:	e8 89 b7 00 00       	call   0x42633a
41abb1:	8b b3 98 00 00 00    	mov    0x98(%ebx),%esi
41abb7:	85 f6                	test   %esi,%esi
41abb9:	75 0b                	jne    0x41abc6
41abbb:	e8 7a b7 00 00       	call   0x42633a
41abc0:	8b b3 98 00 00 00    	mov    0x98(%ebx),%esi
41abc6:	6a 14                	push   $0x14
41abc8:	81 c7 3c 01 00 00    	add    $0x13c,%edi
41abce:	59                   	pop    %ecx
41abcf:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
41abd1:	8b 7c 24 0c          	mov    0xc(%esp),%edi
41abd5:	8b 83 a0 00 00 00    	mov    0xa0(%ebx),%eax
41abdb:	89 87 34 01 00 00    	mov    %eax,0x134(%edi)
41abe1:	8b 8b 88 00 00 00    	mov    0x88(%ebx),%ecx
41abe7:	eb 38                	jmp    0x41ac21
41abe9:	83 f8 02             	cmp    $0x2,%eax
41abec:	0f 85 81 00 00 00    	jne    0x41ac73
41abf2:	83 bb 84 00 00 00 00 	cmpl   $0x0,0x84(%ebx)
41abf9:	75 05                	jne    0x41ac00
41abfb:	e8 3a b7 00 00       	call   0x42633a
41ac00:	8b 83 88 00 00 00    	mov    0x88(%ebx),%eax
41ac06:	85 c0                	test   %eax,%eax
41ac08:	75 0b                	jne    0x41ac15
41ac0a:	e8 2b b7 00 00       	call   0x42633a
41ac0f:	8b 83 88 00 00 00    	mov    0x88(%ebx),%eax
41ac15:	89 87 34 01 00 00    	mov    %eax,0x134(%edi)
41ac1b:	8b 8b 84 00 00 00    	mov    0x84(%ebx),%ecx
41ac21:	e8 46 8b ff ff       	call   0x41376c
41ac26:	85 c0                	test   %eax,%eax
41ac28:	74 49                	je     0x41ac73
41ac2a:	50                   	push   %eax
41ac2b:	8d 8f 24 01 00 00    	lea    0x124(%edi),%ecx
41ac31:	e8 82 14 ff ff       	call   0x40c0b8
41ac36:	8b f0                	mov    %eax,%esi
41ac38:	85 f6                	test   %esi,%esi
41ac3a:	79 2a                	jns    0x41ac66
41ac3c:	8b 0d 00 b0 42 00    	mov    0x42b000,%ecx
41ac42:	81 f9 00 b0 42 00    	cmp    $0x42b000,%ecx
41ac48:	74 53                	je     0x41ac9d
41ac4a:	f6 41 1c 01          	testb  $0x1,0x1c(%ecx)
41ac4e:	74 4d                	je     0x41ac9d
41ac50:	56                   	push   %esi
41ac51:	ff 71 14             	push   0x14(%ecx)
41ac54:	ba 64 49 40 00       	mov    $0x404964,%edx
41ac59:	ff 71 10             	push   0x10(%ecx)
41ac5c:	6a 0d                	push   $0xd
41ac5e:	59                   	pop    %ecx
41ac5f:	e8 6a c7 fe ff       	call   0x4073ce
41ac64:	eb 37                	jmp    0x41ac9d
41ac66:	8b 45 10             	mov    0x10(%ebp),%eax
41ac69:	33 f6                	xor    %esi,%esi
41ac6b:	89 87 20 01 00 00    	mov    %eax,0x120(%edi)
41ac71:	eb 2a                	jmp    0x41ac9d
41ac73:	a1 00 b0 42 00       	mov    0x42b000,%eax
41ac78:	3d 00 b0 42 00       	cmp    $0x42b000,%eax
41ac7d:	74 19                	je     0x41ac98
41ac7f:	f6 40 1c 01          	testb  $0x1,0x1c(%eax)
41ac83:	74 13                	je     0x41ac98
41ac85:	ff 70 14             	push   0x14(%eax)
41ac88:	ba 64 49 40 00       	mov    $0x404964,%edx
41ac8d:	ff 70 10             	push   0x10(%eax)
41ac90:	6a 0c                	push   $0xc
41ac92:	59                   	pop    %ecx
41ac93:	e8 18 c7 fe ff       	call   0x4073b0
41ac98:	be 05 40 00 80       	mov    $0x80004005,%esi
41ac9d:	5f                   	pop    %edi
41ac9e:	8b c6                	mov    %esi,%eax
41aca0:	5e                   	pop    %esi
41aca1:	5b                   	pop    %ebx
41aca2:	8b e5                	mov    %ebp,%esp
41aca4:	5d                   	pop    %ebp
41aca5:	c2 0c 00             	ret    $0xc
41aca8:	8b ff                	mov    %edi,%edi
41acaa:	55                   	push   %ebp
41acab:	8b ec                	mov    %esp,%ebp
41acad:	81 ec 34 0a 00 00    	sub    $0xa34,%esp
41acb3:	a1 74 b6 42 00       	mov    0x42b674,%eax
41acb8:	33 c5                	xor    %ebp,%eax
41acba:	89 45 fc             	mov    %eax,-0x4(%ebp)
41acbd:	53                   	push   %ebx
41acbe:	56                   	push   %esi
41acbf:	57                   	push   %edi
41acc0:	8b f1                	mov    %ecx,%esi
41acc2:	89 b5 dc f5 ff ff    	mov    %esi,-0xa24(%ebp)
41acc8:	8b 55 0c             	mov    0xc(%ebp),%edx
41accb:	8b 45 14             	mov    0x14(%ebp),%eax
41acce:	8b 5d 10             	mov    0x10(%ebp),%ebx
41acd1:	89 85 e8 f5 ff ff    	mov    %eax,-0xa18(%ebp)
41acd7:	8b 4d 08             	mov    0x8(%ebp),%ecx
41acda:	33 ff                	xor    %edi,%edi
41acdc:	89 8d d4 f5 ff ff    	mov    %ecx,-0xa2c(%ebp)
41ace2:	21 bd ec f5 ff ff    	and    %edi,-0xa14(%ebp)
41ace8:	21 39                	and    %edi,(%ecx)
41acea:	33 c9                	xor    %ecx,%ecx
41acec:	89 0a                	mov    %ecx,(%edx)
41acee:	89 0b                	mov    %ecx,(%ebx)
41acf0:	89 08                	mov    %ecx,(%eax)
41acf2:	33 c0                	xor    %eax,%eax
41acf4:	89 9d d8 f5 ff ff    	mov    %ebx,-0xa28(%ebp)
41acfa:	bb 00 08 00 00       	mov    $0x800,%ebx
41acff:	53                   	push   %ebx
41ad00:	66 89 85 f0 fd ff ff 	mov    %ax,-0x210(%ebp)
41ad07:	8d 85 f0 f5 ff ff    	lea    -0xa10(%ebp),%eax
41ad0d:	51                   	push   %ecx
41ad0e:	50                   	push   %eax
41ad0f:	89 95 d0 f5 ff ff    	mov    %edx,-0xa30(%ebp)
41ad15:	e8 93 d6 00 00       	call   0x4283ad
41ad1a:	83 c4 0c             	add    $0xc,%esp
41ad1d:	8d 85 e0 f5 ff ff    	lea    -0xa20(%ebp),%eax
41ad23:	50                   	push   %eax
41ad24:	53                   	push   %ebx
41ad25:	8d 85 f0 f5 ff ff    	lea    -0xa10(%ebp),%eax
41ad2b:	50                   	push   %eax
41ad2c:	ff b6 34 01 00 00    	push   0x134(%esi)
41ad32:	ff 15 94 c0 42 00    	call   *0x42c094
41ad38:	85 c0                	test   %eax,%eax
41ad3a:	0f 84 23 01 00 00    	je     0x41ae63
41ad40:	8b 9d e0 f5 ff ff    	mov    -0xa20(%ebp),%ebx
41ad46:	81 fb 00 08 00 00    	cmp    $0x800,%ebx
41ad4c:	0f 87 11 01 00 00    	ja     0x41ae63
41ad52:	c1 eb 02             	shr    $0x2,%ebx
41ad55:	33 f6                	xor    %esi,%esi
41ad57:	85 db                	test   %ebx,%ebx
41ad59:	0f 84 fd 00 00 00    	je     0x41ae5c
41ad5f:	68 04 01 00 00       	push   $0x104
41ad64:	8d 85 f0 fd ff ff    	lea    -0x210(%ebp),%eax
41ad6a:	50                   	push   %eax
41ad6b:	8b 85 dc f5 ff ff    	mov    -0xa24(%ebp),%eax
41ad71:	ff b4 b5 f0 f5 ff ff 	push   -0xa10(%ebp,%esi,4)
41ad78:	ff b0 34 01 00 00    	push   0x134(%eax)
41ad7e:	ff 15 a8 c0 42 00    	call   *0x42c0a8
41ad84:	85 c0                	test   %eax,%eax
41ad86:	0f 84 a9 00 00 00    	je     0x41ae35
41ad8c:	8d 8d f0 fd ff ff    	lea    -0x210(%ebp),%ecx
41ad92:	e8 d5 89 ff ff       	call   0x41376c
41ad97:	89 85 e4 f5 ff ff    	mov    %eax,-0xa1c(%ebp)
41ad9d:	85 c0                	test   %eax,%eax
41ad9f:	0f 84 90 00 00 00    	je     0x41ae35
41ada5:	68 54 44 40 00       	push   $0x404454
41adaa:	50                   	push   %eax
41adab:	ff 15 2c c3 42 00    	call   *0x42c32c
41adb1:	59                   	pop    %ecx
41adb2:	59                   	pop    %ecx
41adb3:	85 c0                	test   %eax,%eax
41adb5:	75 1d                	jne    0x41add4
41adb7:	8b 8d e8 f5 ff ff    	mov    -0xa18(%ebp),%ecx
41adbd:	b8 54 44 40 00       	mov    $0x404454,%eax
41adc2:	8b bc b5 f0 f5 ff ff 	mov    -0xa10(%ebp,%esi,4),%edi
41adc9:	89 85 ec f5 ff ff    	mov    %eax,-0xa14(%ebp)
41adcf:	83 21 00             	andl   $0x0,(%ecx)
41add2:	eb 67                	jmp    0x41ae3b
41add4:	85 ff                	test   %edi,%edi
41add6:	75 37                	jne    0x41ae0f
41add8:	68 6c 44 40 00       	push   $0x40446c
41addd:	ff b5 e4 f5 ff ff    	push   -0xa1c(%ebp)
41ade3:	ff 15 2c c3 42 00    	call   *0x42c32c
41ade9:	59                   	pop    %ecx
41adea:	59                   	pop    %ecx
41adeb:	85 c0                	test   %eax,%eax
41aded:	75 20                	jne    0x41ae0f
41adef:	8b 8d e8 f5 ff ff    	mov    -0xa18(%ebp),%ecx
41adf5:	b8 6c 44 40 00       	mov    $0x40446c,%eax
41adfa:	8b bc b5 f0 f5 ff ff 	mov    -0xa10(%ebp,%esi,4),%edi
41ae01:	89 85 ec f5 ff ff    	mov    %eax,-0xa14(%ebp)
41ae07:	c7 01 01 00 00 00    	movl   $0x1,(%ecx)
41ae0d:	eb 2c                	jmp    0x41ae3b
41ae0f:	68 88 44 40 00       	push   $0x404488
41ae14:	ff b5 e4 f5 ff ff    	push   -0xa1c(%ebp)
41ae1a:	ff 15 2c c3 42 00    	call   *0x42c32c
41ae20:	59                   	pop    %ecx
41ae21:	59                   	pop    %ecx
41ae22:	85 c0                	test   %eax,%eax
41ae24:	75 0f                	jne    0x41ae35
41ae26:	8b 8d d8 f5 ff ff    	mov    -0xa28(%ebp),%ecx
41ae2c:	8b 84 b5 f0 f5 ff ff 	mov    -0xa10(%ebp,%esi,4),%eax
41ae33:	89 01                	mov    %eax,(%ecx)
41ae35:	8b 85 ec f5 ff ff    	mov    -0xa14(%ebp),%eax
41ae3b:	46                   	inc    %esi
41ae3c:	3b f3                	cmp    %ebx,%esi
41ae3e:	0f 82 1b ff ff ff    	jb     0x41ad5f
41ae44:	85 ff                	test   %edi,%edi
41ae46:	74 14                	je     0x41ae5c
41ae48:	8b 8d d4 f5 ff ff    	mov    -0xa2c(%ebp),%ecx
41ae4e:	89 39                	mov    %edi,(%ecx)
41ae50:	8b 8d d0 f5 ff ff    	mov    -0xa30(%ebp),%ecx
41ae56:	89 01                	mov    %eax,(%ecx)
41ae58:	33 c0                	xor    %eax,%eax
41ae5a:	eb 31                	jmp    0x41ae8d
41ae5c:	b8 7e 00 07 80       	mov    $0x8007007e,%eax
41ae61:	eb 2a                	jmp    0x41ae8d
41ae63:	a1 00 b0 42 00       	mov    0x42b000,%eax
41ae68:	3d 00 b0 42 00       	cmp    $0x42b000,%eax
41ae6d:	74 19                	je     0x41ae88
41ae6f:	f6 40 1c 01          	testb  $0x1,0x1c(%eax)
41ae73:	74 13                	je     0x41ae88
41ae75:	ff 70 14             	push   0x14(%eax)
41ae78:	ba 64 49 40 00       	mov    $0x404964,%edx
41ae7d:	ff 70 10             	push   0x10(%eax)
41ae80:	6a 0e                	push   $0xe
41ae82:	59                   	pop    %ecx
41ae83:	e8 28 c5 fe ff       	call   0x4073b0
41ae88:	b8 05 40 00 80       	mov    $0x80004005,%eax
41ae8d:	8b 4d fc             	mov    -0x4(%ebp),%ecx
41ae90:	5f                   	pop    %edi
41ae91:	5e                   	pop    %esi
41ae92:	33 cd                	xor    %ebp,%ecx
41ae94:	5b                   	pop    %ebx
41ae95:	e8 46 cc 00 00       	call   0x427ae0
41ae9a:	c9                   	leave
41ae9b:	c2 10 00             	ret    $0x10
41ae9e:	8b ff                	mov    %edi,%edi
41aea0:	55                   	push   %ebp
41aea1:	8b ec                	mov    %esp,%ebp
41aea3:	83 e4 f8             	and    $0xfffffff8,%esp
41aea6:	83 ec 1c             	sub    $0x1c,%esp
41aea9:	8b 45 08             	mov    0x8(%ebp),%eax
41aeac:	53                   	push   %ebx
41aead:	56                   	push   %esi
41aeae:	33 f6                	xor    %esi,%esi
41aeb0:	8b d9                	mov    %ecx,%ebx
41aeb2:	8b 4d 0c             	mov    0xc(%ebp),%ecx
41aeb5:	57                   	push   %edi
41aeb6:	56                   	push   %esi
41aeb7:	89 5c 24 28          	mov    %ebx,0x28(%esp)
41aebb:	8b fe                	mov    %esi,%edi
41aebd:	89 74 24 18          	mov    %esi,0x18(%esp)
41aec1:	89 74 24 1c          	mov    %esi,0x1c(%esp)
41aec5:	89 74 24 14          	mov    %esi,0x14(%esp)
41aec9:	89 74 24 20          	mov    %esi,0x20(%esp)
41aecd:	89 30                	mov    %esi,(%eax)
41aecf:	e8 51 1d ff ff       	call   0x40cc25
41aed4:	8d 44 24 1c          	lea    0x1c(%esp),%eax
41aed8:	8b cb                	mov    %ebx,%ecx
41aeda:	50                   	push   %eax
41aedb:	8d 44 24 1c          	lea    0x1c(%esp),%eax
41aedf:	50                   	push   %eax
41aee0:	8d 44 24 18          	lea    0x18(%esp),%eax
41aee4:	50                   	push   %eax
41aee5:	8d 44 24 20          	lea    0x20(%esp),%eax
41aee9:	50                   	push   %eax
41aeea:	e8 b9 fd ff ff       	call   0x41aca8
41aeef:	85 c0                	test   %eax,%eax
41aef1:	0f 88 19 01 00 00    	js     0x41b010
41aef7:	39 74 24 14          	cmp    %esi,0x14(%esp)
41aefb:	75 05                	jne    0x41af02
41aefd:	e8 38 b4 00 00       	call   0x42633a
41af02:	39 74 24 10          	cmp    %esi,0x10(%esp)
41af06:	75 05                	jne    0x41af0d
41af08:	e8 2d b4 00 00       	call   0x42633a
41af0d:	56                   	push   %esi
41af0e:	56                   	push   %esi
41af0f:	ff 74 24 18          	push   0x18(%esp)
41af13:	ff 15 34 c1 42 00    	call   *0x42c134
41af19:	8b f8                	mov    %eax,%edi
41af1b:	85 ff                	test   %edi,%edi
41af1d:	75 31                	jne    0x41af50
41af1f:	8b 0d 00 b0 42 00    	mov    0x42b000,%ecx
41af25:	81 f9 00 b0 42 00    	cmp    $0x42b000,%ecx
41af2b:	74 19                	je     0x41af46
41af2d:	f6 41 1c 01          	testb  $0x1,0x1c(%ecx)
41af31:	74 13                	je     0x41af46
41af33:	ff 71 14             	push   0x14(%ecx)
41af36:	ff 71 10             	push   0x10(%ecx)
41af39:	6a 0f                	push   $0xf
41af3b:	ba 64 49 40 00       	mov    $0x404964,%edx
41af40:	59                   	pop    %ecx
41af41:	e8 6a c4 fe ff       	call   0x4073b0
41af46:	be 05 40 00 80       	mov    $0x80004005,%esi
41af4b:	e9 c0 00 00 00       	jmp    0x41b010
41af50:	68 b4 44 40 00       	push   $0x4044b4
41af55:	57                   	push   %edi
41af56:	ff 15 84 c1 42 00    	call   *0x42c184
41af5c:	8b c8                	mov    %eax,%ecx
41af5e:	89 4c 24 10          	mov    %ecx,0x10(%esp)
41af62:	85 c9                	test   %ecx,%ecx
41af64:	75 1c                	jne    0x41af82
41af66:	a1 00 b0 42 00       	mov    0x42b000,%eax
41af6b:	3d 00 b0 42 00       	cmp    $0x42b000,%eax
41af70:	74 d4                	je     0x41af46
41af72:	f6 40 1c 01          	testb  $0x1,0x1c(%eax)
41af76:	74 ce                	je     0x41af46
41af78:	ff 70 14             	push   0x14(%eax)
41af7b:	ff 70 10             	push   0x10(%eax)
41af7e:	6a 10                	push   $0x10
41af80:	eb b9                	jmp    0x41af3b
41af82:	8d 43 04             	lea    0x4(%ebx),%eax
41af85:	50                   	push   %eax
41af86:	89 44 24 24          	mov    %eax,0x24(%esp)
41af8a:	8d 44 24 13          	lea    0x13(%esp),%eax
41af8e:	50                   	push   %eax
41af8f:	8d 83 3c 01 00 00    	lea    0x13c(%ebx),%eax
41af95:	50                   	push   %eax
41af96:	ff 74 24 20          	push   0x20(%esp)