46ddbe:	8b b6 b0 00 00 00    	mov    0xb0(%esi),%esi
46ddc4:	8b c6                	mov    %esi,%eax
46ddc6:	8b 15 e8 45 44 00    	mov    0x4445e8,%edx
46ddcc:	e8 33 5e f9 ff       	call   0x403c04
46ddd1:	84 c0                	test   %al,%al
46ddd3:	74 3a                	je     0x46de0f
46ddd5:	8b c6                	mov    %esi,%eax
46ddd7:	e8 7c 14 fe ff       	call   0x44f258
46dddc:	84 c0                	test   %al,%al
46ddde:	74 2f                	je     0x46de0f
46dde0:	8b c6                	mov    %esi,%eax
46dde2:	e8 6d 11 fe ff       	call   0x44ef54
46dde7:	50                   	push   %eax
46dde8:	8b 45 1c             	mov    0x1c(%ebp),%eax
46ddeb:	e8 44 8a f9 ff       	call   0x406834
46ddf0:	8b d0                	mov    %eax,%edx
46ddf2:	58                   	pop    %eax
46ddf3:	e8 28 f7 ff ff       	call   0x46d520
46ddf8:	84 c0                	test   %al,%al
46ddfa:	74 04                	je     0x46de00
46ddfc:	33 db                	xor    %ebx,%ebx
46ddfe:	eb 05                	jmp    0x46de05
46de00:	bb ff ff 00 80       	mov    $0x8000ffff,%ebx
46de05:	33 c0                	xor    %eax,%eax
46de07:	5a                   	pop    %edx
46de08:	59                   	pop    %ecx
46de09:	59                   	pop    %ecx
46de0a:	64 89 10             	mov    %edx,%fs:(%eax)
46de0d:	eb 30                	jmp    0x46de3f
46de0f:	8d 55 f8             	lea    -0x8(%ebp),%edx
46de12:	8b c3                	mov    %ebx,%eax
46de14:	e8 57 53 00 00       	call   0x473170
46de19:	8b 55 f8             	mov    -0x8(%ebp),%edx
46de1c:	8b 45 1c             	mov    0x1c(%ebp),%eax
46de1f:	e8 28 8a f9 ff       	call   0x40684c
46de24:	33 db                	xor    %ebx,%ebx
46de26:	33 c0                	xor    %eax,%eax
46de28:	5a                   	pop    %edx
46de29:	59                   	pop    %ecx
46de2a:	59                   	pop    %ecx
46de2b:	64 89 10             	mov    %edx,%fs:(%eax)
46de2e:	eb 0f                	jmp    0x46de3f
46de30:	e9 23 61 f9 ff       	jmp    0x403f58
46de35:	bb ff ff 00 80       	mov    $0x8000ffff,%ebx
46de3a:	e8 81 64 f9 ff       	call   0x4042c0
46de3f:	33 c0                	xor    %eax,%eax
46de41:	5a                   	pop    %edx
46de42:	59                   	pop    %ecx
46de43:	59                   	pop    %ecx
46de44:	64 89 10             	mov    %edx,%fs:(%eax)
46de47:	68 64 de 46 00       	push   $0x46de64
46de4c:	8d 45 f8             	lea    -0x8(%ebp),%eax
46de4f:	e8 e0 89 f9 ff       	call   0x406834
46de54:	8d 45 0c             	lea    0xc(%ebp),%eax
46de57:	e8 10 7c f9 ff       	call   0x405a6c
46de5c:	c3                   	ret
46de5d:	e9 aa 63 f9 ff       	jmp    0x40420c
46de62:	eb e8                	jmp    0x46de4c
46de64:	8b c3                	mov    %ebx,%eax
46de66:	5f                   	pop    %edi
46de67:	5e                   	pop    %esi
46de68:	5b                   	pop    %ebx
46de69:	59                   	pop    %ecx
46de6a:	59                   	pop    %ecx
46de6b:	5d                   	pop    %ebp
46de6c:	c2 18 00             	ret    $0x18
46de6f:	90                   	nop
46de70:	55                   	push   %ebp
46de71:	8b ec                	mov    %esp,%ebp
46de73:	51                   	push   %ecx
46de74:	53                   	push   %ebx
46de75:	56                   	push   %esi
46de76:	57                   	push   %edi
46de77:	8b 75 08             	mov    0x8(%ebp),%esi
46de7a:	33 d2                	xor    %edx,%edx
46de7c:	55                   	push   %ebp
46de7d:	68 d9 de 46 00       	push   $0x46ded9
46de82:	64 ff 32             	push   %fs:(%edx)
46de85:	64 89 22             	mov    %esp,%fs:(%edx)
46de88:	8b 46 1c             	mov    0x1c(%esi),%eax
46de8b:	85 c0                	test   %eax,%eax
46de8d:	74 3b                	je     0x46deca
46de8f:	33 d2                	xor    %edx,%edx
46de91:	89 55 fc             	mov    %edx,-0x4(%ebp)
46de94:	8b 98 c0 00 00 00    	mov    0xc0(%eax),%ebx
46de9a:	4b                   	dec    %ebx
46de9b:	85 db                	test   %ebx,%ebx
46de9d:	7c 1f                	jl     0x46debe
46de9f:	43                   	inc    %ebx
46dea0:	33 ff                	xor    %edi,%edi
46dea2:	8b 46 1c             	mov    0x1c(%esi),%eax
46dea5:	8b 80 c4 00 00 00    	mov    0xc4(%eax),%eax
46deab:	8b 04 b8             	mov    (%eax,%edi,4),%eax
46deae:	e8 6d 53 00 00       	call   0x473220
46deb3:	84 c0                	test   %al,%al
46deb5:	74 03                	je     0x46deba
46deb7:	ff 45 fc             	incl   -0x4(%ebp)
46deba:	47                   	inc    %edi
46debb:	4b                   	dec    %ebx
46debc:	75 e4                	jne    0x46dea2
46debe:	8b 45 0c             	mov    0xc(%ebp),%eax
46dec1:	8b 55 fc             	mov    -0x4(%ebp),%edx
46dec4:	89 10                	mov    %edx,(%eax)
46dec6:	33 db                	xor    %ebx,%ebx
46dec8:	eb 05                	jmp    0x46decf
46deca:	bb 05 40 00 80       	mov    $0x80004005,%ebx
46decf:	33 c0                	xor    %eax,%eax
46ded1:	5a                   	pop    %edx
46ded2:	59                   	pop    %ecx
46ded3:	59                   	pop    %ecx
46ded4:	64 89 10             	mov    %edx,%fs:(%eax)
46ded7:	eb 0f                	jmp    0x46dee8
46ded9:	e9 7a 60 f9 ff       	jmp    0x403f58
46dede:	bb ff ff 00 80       	mov    $0x8000ffff,%ebx
46dee3:	e8 d8 63 f9 ff       	call   0x4042c0
46dee8:	8b c3                	mov    %ebx,%eax
46deea:	5f                   	pop    %edi
46deeb:	5e                   	pop    %esi
46deec:	5b                   	pop    %ebx
46deed:	59                   	pop    %ecx
46deee:	5d                   	pop    %ebp
46deef:	c2 08 00             	ret    $0x8
46def2:	8b c0                	mov    %eax,%eax
46def4:	55                   	push   %ebp
46def5:	8b ec                	mov    %esp,%ebp
46def7:	53                   	push   %ebx
46def8:	8d 45 0c             	lea    0xc(%ebp),%eax
46defb:	e8 74 7b f9 ff       	call   0x405a74
46df00:	8b 45 1c             	mov    0x1c(%ebp),%eax
46df03:	85 c0                	test   %eax,%eax
46df05:	74 04                	je     0x46df0b
46df07:	33 d2                	xor    %edx,%edx
46df09:	89 10                	mov    %edx,(%eax)
46df0b:	33 c0                	xor    %eax,%eax
46df0d:	55                   	push   %ebp
46df0e:	68 34 df 46 00       	push   $0x46df34
46df13:	64 ff 30             	push   %fs:(%eax)
46df16:	64 89 20             	mov    %esp,%fs:(%eax)
46df19:	bb 01 00 00 00       	mov    $0x1,%ebx
46df1e:	33 c0                	xor    %eax,%eax
46df20:	5a                   	pop    %edx
46df21:	59                   	pop    %ecx
46df22:	59                   	pop    %ecx
46df23:	64 89 10             	mov    %edx,%fs:(%eax)
46df26:	68 3b df 46 00       	push   $0x46df3b
46df2b:	8d 45 0c             	lea    0xc(%ebp),%eax
46df2e:	e8 39 7b f9 ff       	call   0x405a6c
46df33:	c3                   	ret
46df34:	e9 d3 62 f9 ff       	jmp    0x40420c
46df39:	eb f0                	jmp    0x46df2b
46df3b:	8b c3                	mov    %ebx,%eax
46df3d:	5b                   	pop    %ebx
46df3e:	5d                   	pop    %ebp
46df3f:	c2 18 00             	ret    $0x18
46df42:	8b c0                	mov    %eax,%eax
46df44:	55                   	push   %ebp
46df45:	8b ec                	mov    %esp,%ebp
46df47:	53                   	push   %ebx
46df48:	8d 45 0c             	lea    0xc(%ebp),%eax
46df4b:	e8 24 7b f9 ff       	call   0x405a74
46df50:	8b 45 1c             	mov    0x1c(%ebp),%eax
46df53:	85 c0                	test   %eax,%eax
46df55:	74 04                	je     0x46df5b
46df57:	33 d2                	xor    %edx,%edx
46df59:	89 10                	mov    %edx,(%eax)
46df5b:	33 c0                	xor    %eax,%eax
46df5d:	55                   	push   %ebp
46df5e:	68 84 df 46 00       	push   $0x46df84
46df63:	64 ff 30             	push   %fs:(%eax)
46df66:	64 89 20             	mov    %esp,%fs:(%eax)
46df69:	bb 01 00 00 00       	mov    $0x1,%ebx
46df6e:	33 c0                	xor    %eax,%eax
46df70:	5a                   	pop    %edx
46df71:	59                   	pop    %ecx
46df72:	59                   	pop    %ecx
46df73:	64 89 10             	mov    %edx,%fs:(%eax)
46df76:	68 8b df 46 00       	push   $0x46df8b
46df7b:	8d 45 0c             	lea    0xc(%ebp),%eax
46df7e:	e8 e9 7a f9 ff       	call   0x405a6c
46df83:	c3                   	ret
46df84:	e9 83 62 f9 ff       	jmp    0x40420c
46df89:	eb f0                	jmp    0x46df7b
46df8b:	8b c3                	mov    %ebx,%eax
46df8d:	5b                   	pop    %ebx
46df8e:	5d                   	pop    %ebp
46df8f:	c2 18 00             	ret    $0x18
46df92:	8b c0                	mov    %eax,%eax
46df94:	55                   	push   %ebp
46df95:	8b ec                	mov    %esp,%ebp
46df97:	8b 45 0c             	mov    0xc(%ebp),%eax
46df9a:	8b 55 0c             	mov    0xc(%ebp),%edx
46df9d:	85 d2                	test   %edx,%edx
46df9f:	74 0d                	je     0x46dfae
46dfa1:	33 c9                	xor    %ecx,%ecx
46dfa3:	89 4a 0c             	mov    %ecx,0xc(%edx)
46dfa6:	89 4a 08             	mov    %ecx,0x8(%edx)
46dfa9:	89 4a 04             	mov    %ecx,0x4(%edx)
46dfac:	89 0a                	mov    %ecx,(%edx)
46dfae:	b8 01 00 00 00       	mov    $0x1,%eax
46dfb3:	5d                   	pop    %ebp
46dfb4:	c2 08 00             	ret    $0x8
46dfb7:	90                   	nop
46dfb8:	55                   	push   %ebp
46dfb9:	8b ec                	mov    %esp,%ebp
46dfbb:	53                   	push   %ebx
46dfbc:	8d 45 0c             	lea    0xc(%ebp),%eax
46dfbf:	e8 b0 7a f9 ff       	call   0x405a74
46dfc4:	8b 45 1c             	mov    0x1c(%ebp),%eax
46dfc7:	85 c0                	test   %eax,%eax
46dfc9:	74 04                	je     0x46dfcf
46dfcb:	33 d2                	xor    %edx,%edx
46dfcd:	89 10                	mov    %edx,(%eax)
46dfcf:	33 c0                	xor    %eax,%eax
46dfd1:	55                   	push   %ebp
46dfd2:	68 f8 df 46 00       	push   $0x46dff8
46dfd7:	64 ff 30             	push   %fs:(%eax)
46dfda:	64 89 20             	mov    %esp,%fs:(%eax)
46dfdd:	bb 01 00 00 00       	mov    $0x1,%ebx
46dfe2:	33 c0                	xor    %eax,%eax
46dfe4:	5a                   	pop    %edx
46dfe5:	59                   	pop    %ecx
46dfe6:	59                   	pop    %ecx
46dfe7:	64 89 10             	mov    %edx,%fs:(%eax)
46dfea:	68 ff df 46 00       	push   $0x46dfff
46dfef:	8d 45 0c             	lea    0xc(%ebp),%eax
46dff2:	e8 75 7a f9 ff       	call   0x405a6c
46dff7:	c3                   	ret
46dff8:	e9 0f 62 f9 ff       	jmp    0x40420c
46dffd:	eb f0                	jmp    0x46dfef
46dfff:	8b c3                	mov    %ebx,%eax
46e001:	5b                   	pop    %ebx
46e002:	5d                   	pop    %ebp
46e003:	c2 18 00             	ret    $0x18
46e006:	8b c0                	mov    %eax,%eax
46e008:	55                   	push   %ebp
46e009:	8b ec                	mov    %esp,%ebp
46e00b:	53                   	push   %ebx
46e00c:	8b 45 0c             	mov    0xc(%ebp),%eax
46e00f:	85 c0                	test   %eax,%eax
46e011:	74 04                	je     0x46e017
46e013:	33 d2                	xor    %edx,%edx
46e015:	89 10                	mov    %edx,(%eax)
46e017:	8d 45 10             	lea    0x10(%ebp),%eax
46e01a:	e8 55 7a f9 ff       	call   0x405a74
46e01f:	33 c0                	xor    %eax,%eax
46e021:	55                   	push   %ebp
46e022:	68 4f e0 46 00       	push   $0x46e04f
46e027:	64 ff 30             	push   %fs:(%eax)
46e02a:	64 89 20             	mov    %esp,%fs:(%eax)
46e02d:	8b 45 20             	mov    0x20(%ebp),%eax
46e030:	33 d2                	xor    %edx,%edx
46e032:	89 10                	mov    %edx,(%eax)
46e034:	bb 01 00 00 00       	mov    $0x1,%ebx
46e039:	33 c0                	xor    %eax,%eax
46e03b:	5a                   	pop    %edx
46e03c:	59                   	pop    %ecx
46e03d:	59                   	pop    %ecx
46e03e:	64 89 10             	mov    %edx,%fs:(%eax)
46e041:	68 56 e0 46 00       	push   $0x46e056
46e046:	8d 45 10             	lea    0x10(%ebp),%eax
46e049:	e8 1e 7a f9 ff       	call   0x405a6c
46e04e:	c3                   	ret
46e04f:	e9 b8 61 f9 ff       	jmp    0x40420c
46e054:	eb f0                	jmp    0x46e046
46e056:	8b c3                	mov    %ebx,%eax
46e058:	5b                   	pop    %ebx
46e059:	5d                   	pop    %ebp
46e05a:	c2 1c 00             	ret    $0x1c
46e05d:	8d 40 00             	lea    0x0(%eax),%eax
46e060:	55                   	push   %ebp
46e061:	8b ec                	mov    %esp,%ebp
46e063:	83 c4 f8             	add    $0xfffffff8,%esp
46e066:	53                   	push   %ebx
46e067:	56                   	push   %esi
46e068:	57                   	push   %edi
46e069:	33 c0                	xor    %eax,%eax
46e06b:	89 45 f8             	mov    %eax,-0x8(%ebp)
46e06e:	8b 5d 08             	mov    0x8(%ebp),%ebx
46e071:	8d 45 0c             	lea    0xc(%ebp),%eax
46e074:	e8 fb 79 f9 ff       	call   0x405a74
46e079:	8b 45 1c             	mov    0x1c(%ebp),%eax
46e07c:	85 c0                	test   %eax,%eax
46e07e:	74 04                	je     0x46e084
46e080:	33 d2                	xor    %edx,%edx
46e082:	89 10                	mov    %edx,(%eax)
46e084:	33 c0                	xor    %eax,%eax
46e086:	55                   	push   %ebp
46e087:	68 21 e1 46 00       	push   $0x46e121
46e08c:	64 ff 30             	push   %fs:(%eax)
46e08f:	64 89 20             	mov    %esp,%fs:(%eax)
46e092:	33 c0                	xor    %eax,%eax
46e094:	55                   	push   %ebp
46e095:	68 f2 e0 46 00       	push   $0x46e0f2
46e09a:	64 ff 30             	push   %fs:(%eax)
46e09d:	64 89 20             	mov    %esp,%fs:(%eax)
46e0a0:	8d 4d fc             	lea    -0x4(%ebp),%ecx
46e0a3:	8d 55 0c             	lea    0xc(%ebp),%edx
46e0a6:	8b c3                	mov    %ebx,%eax
46e0a8:	e8 2b f7 ff ff       	call   0x46d7d8
46e0ad:	84 c0                	test   %al,%al
46e0af:	75 0a                	jne    0x46e0bb
46e0b1:	33 c0                	xor    %eax,%eax
46e0b3:	5a                   	pop    %edx
46e0b4:	59                   	pop    %ecx
46e0b5:	59                   	pop    %ecx
46e0b6:	64 89 10             	mov    %edx,%fs:(%eax)
46e0b9:	eb 48                	jmp    0x46e103
46e0bb:	8b 43 1c             	mov    0x1c(%ebx),%eax
46e0be:	f6 80 b4 00 00 00 01 	testb  $0x1,0xb4(%eax)
46e0c5:	74 1a                	je     0x46e0e1
46e0c7:	8d 45 f8             	lea    -0x8(%ebp),%eax
46e0ca:	e8 d5 f4 ff ff       	call   0x46d5a4
46e0cf:	8b 55 f8             	mov    -0x8(%ebp),%edx
46e0d2:	8b 45 1c             	mov    0x1c(%ebp),%eax
46e0d5:	e8 16 70 f9 ff       	call   0x4050f0
46e0da:	33 c0                	xor    %eax,%eax
46e0dc:	89 45 fc             	mov    %eax,-0x4(%ebp)
46e0df:	eb 07                	jmp    0x46e0e8
46e0e1:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
46e0e8:	33 c0                	xor    %eax,%eax
46e0ea:	5a                   	pop    %edx
46e0eb:	59                   	pop    %ecx
46e0ec:	59                   	pop    %ecx
46e0ed:	64 89 10             	mov    %edx,%fs:(%eax)
46e0f0:	eb 11                	jmp    0x46e103
46e0f2:	e9 61 5e f9 ff       	jmp    0x403f58
46e0f7:	c7 45 fc ff ff 00 80 	movl   $0x8000ffff,-0x4(%ebp)
46e0fe:	e8 bd 61 f9 ff       	call   0x4042c0
46e103:	33 c0                	xor    %eax,%eax
46e105:	5a                   	pop    %edx
46e106:	59                   	pop    %ecx
46e107:	59                   	pop    %ecx
46e108:	64 89 10             	mov    %edx,%fs:(%eax)
46e10b:	68 28 e1 46 00       	push   $0x46e128
46e110:	8d 45 f8             	lea    -0x8(%ebp),%eax
46e113:	e8 50 67 f9 ff       	call   0x404868
46e118:	8d 45 0c             	lea    0xc(%ebp),%eax
46e11b:	e8 4c 79 f9 ff       	call   0x405a6c
46e120:	c3                   	ret
46e121:	e9 e6 60 f9 ff       	jmp    0x40420c
46e126:	eb e8                	jmp    0x46e110
46e128:	8b 45 fc             	mov    -0x4(%ebp),%eax
46e12b:	5f                   	pop    %edi
46e12c:	5e                   	pop    %esi
46e12d:	5b                   	pop    %ebx
46e12e:	59                   	pop    %ecx
46e12f:	59                   	pop    %ecx
46e130:	5d                   	pop    %ebp
46e131:	c2 18 00             	ret    $0x18
46e134:	55                   	push   %ebp