403fce:	8b 48 14             	mov    0x14(%eax),%ecx
403fd1:	74 41                	je     0x404014
403fd3:	ff 15 10 80 4a 00    	call   *0x4a8010
403fd9:	8b 54 24 1c          	mov    0x1c(%esp),%edx
403fdd:	e8 32 fd ff ff       	call   0x403d14
403fe2:	80 3d 28 b0 49 00 00 	cmpb   $0x0,0x49b028
403fe9:	76 1e                	jbe    0x404009
403feb:	80 3d 24 b0 49 00 00 	cmpb   $0x0,0x49b024
403ff2:	77 15                	ja     0x404009
403ff4:	8d 4c 24 04          	lea    0x4(%esp),%ecx
403ff8:	50                   	push   %eax
403ff9:	51                   	push   %ecx
403ffa:	e8 7d d2 ff ff       	call   0x40127c
403fff:	83 f8 00             	cmp    $0x0,%eax
404002:	58                   	pop    %eax
404003:	0f 84 9f 00 00 00    	je     0x4040a8
404009:	89 c2                	mov    %eax,%edx
40400b:	8b 44 24 14          	mov    0x14(%esp),%eax
40400f:	8b 48 0c             	mov    0xc(%eax),%ecx
404012:	eb 27                	jmp    0x40403b
404014:	80 3d 28 b0 49 00 01 	cmpb   $0x1,0x49b028
40401b:	76 1e                	jbe    0x40403b
40401d:	80 3d 24 b0 49 00 00 	cmpb   $0x0,0x49b024
404024:	77 15                	ja     0x40403b
404026:	50                   	push   %eax
404027:	8d 44 24 08          	lea    0x8(%esp),%eax
40402b:	52                   	push   %edx
40402c:	51                   	push   %ecx
40402d:	50                   	push   %eax
40402e:	e8 49 d2 ff ff       	call   0x40127c
404033:	83 f8 00             	cmp    $0x0,%eax
404036:	59                   	pop    %ecx
404037:	5a                   	pop    %edx
404038:	58                   	pop    %eax
404039:	74 6d                	je     0x4040a8
40403b:	31 db                	xor    %ebx,%ebx
40403d:	64 8b 1b             	mov    %fs:(%ebx),%ebx
404040:	53                   	push   %ebx
404041:	50                   	push   %eax
404042:	52                   	push   %edx
404043:	51                   	push   %ecx
404044:	8b 54 24 28          	mov    0x28(%esp),%edx
404048:	83 48 04 02          	orl    $0x2,0x4(%eax)
40404c:	56                   	push   %esi
40404d:	6a 00                	push   $0x0
40404f:	50                   	push   %eax
404050:	68 5c 40 40 00       	push   $0x40405c
404055:	52                   	push   %edx
404056:	ff 15 18 80 4a 00    	call   *0x4a8018
40405c:	5b                   	pop    %ebx
40405d:	8b 7c 24 28          	mov    0x28(%esp),%edi
404061:	e8 46 27 00 00       	call   0x4067ac
404066:	ff b0 00 00 00 00    	push   0x0(%eax)
40406c:	89 a0 00 00 00 00    	mov    %esp,0x0(%eax)
404072:	8b 6f 08             	mov    0x8(%edi),%ebp
404075:	c7 47 04 88 40 40 00 	movl   $0x404088,0x4(%edi)
40407c:	8b 44 24 08          	mov    0x8(%esp),%eax
404080:	e8 cb fc ff ff       	call   0x403d50
404085:	ff 63 04             	jmp    *0x4(%ebx)
404088:	e9 cb 00 00 00       	jmp    0x404158
40408d:	e8 1a 27 00 00       	call   0x4067ac
404092:	8b 88 00 00 00 00    	mov    0x0(%eax),%ecx
404098:	8b 11                	mov    (%ecx),%edx
40409a:	89 90 00 00 00 00    	mov    %edx,0x0(%eax)
4040a0:	8b 41 08             	mov    0x8(%ecx),%eax
4040a3:	e9 74 f8 ff ff       	jmp    0x40391c
4040a8:	b8 01 00 00 00       	mov    $0x1,%eax
4040ad:	c3                   	ret
4040ae:	8b c0                	mov    %eax,%eax
4040b0:	8b 44 24 04          	mov    0x4(%esp),%eax
4040b4:	f7 40 04 06 00 00 00 	testl  $0x6,0x4(%eax)
4040bb:	0f 84 8f 00 00 00    	je     0x404150
4040c1:	53                   	push   %ebx
4040c2:	31 db                	xor    %ebx,%ebx
4040c4:	56                   	push   %esi
4040c5:	57                   	push   %edi
4040c6:	55                   	push   %ebp
4040c7:	55                   	push   %ebp
4040c8:	68 30 41 40 00       	push   $0x404130
4040cd:	64 ff 33             	push   %fs:(%ebx)
4040d0:	64 89 23             	mov    %esp,%fs:(%ebx)
4040d3:	64 8b 1b             	mov    %fs:(%ebx),%ebx
4040d6:	8b 50 18             	mov    0x18(%eax),%edx
4040d9:	8b 48 14             	mov    0x14(%eax),%ecx
4040dc:	53                   	push   %ebx
4040dd:	50                   	push   %eax
4040de:	52                   	push   %edx
4040df:	51                   	push   %ecx
4040e0:	8b 7c 24 34          	mov    0x34(%esp),%edi
4040e4:	e8 c3 26 00 00       	call   0x4067ac
4040e9:	ff b0 00 00 00 00    	push   0x0(%eax)
4040ef:	89 a0 00 00 00 00    	mov    %esp,0x0(%eax)
4040f5:	8b 4f 04             	mov    0x4(%edi),%ecx
4040f8:	8b 6f 08             	mov    0x8(%edi),%ebp
4040fb:	c7 47 04 30 41 40 00 	movl   $0x404130,0x4(%edi)
404102:	83 c1 05             	add    $0x5,%ecx
404105:	e8 8e fc ff ff       	call   0x403d98
40410a:	ff d1                	call   *%ecx
40410c:	e8 9b 26 00 00       	call   0x4067ac
404111:	8b 88 00 00 00 00    	mov    0x0(%eax),%ecx
404117:	8b 11                	mov    (%ecx),%edx
404119:	89 90 00 00 00 00    	mov    %edx,0x0(%eax)
40411f:	83 c4 14             	add    $0x14,%esp
404122:	31 c0                	xor    %eax,%eax
404124:	5a                   	pop    %edx
404125:	59                   	pop    %ecx
404126:	59                   	pop    %ecx
404127:	64 89 10             	mov    %edx,%fs:(%eax)
40412a:	5d                   	pop    %ebp
40412b:	5f                   	pop    %edi
40412c:	5e                   	pop    %esi
40412d:	5b                   	pop    %ebx
40412e:	eb 20                	jmp    0x404150
404130:	e9 23 00 00 00       	jmp    0x404158
404135:	e8 72 26 00 00       	call   0x4067ac
40413a:	8b 88 00 00 00 00    	mov    0x0(%eax),%ecx
404140:	8b 11                	mov    (%ecx),%edx
404142:	89 90 00 00 00 00    	mov    %edx,0x0(%eax)
404148:	8b 41 08             	mov    0x8(%ecx),%eax
40414b:	e9 cc f7 ff ff       	jmp    0x40391c
404150:	b8 01 00 00 00       	mov    $0x1,%eax
404155:	c3                   	ret
404156:	8b c0                	mov    %eax,%eax
404158:	8b 44 24 04          	mov    0x4(%esp),%eax
40415c:	8b 54 24 08          	mov    0x8(%esp),%edx
404160:	f7 40 04 06 00 00 00 	testl  $0x6,0x4(%eax)
404167:	74 1f                	je     0x404188
404169:	8b 4a 04             	mov    0x4(%edx),%ecx
40416c:	c7 42 04 88 41 40 00 	movl   $0x404188,0x4(%edx)
404173:	53                   	push   %ebx
404174:	56                   	push   %esi
404175:	57                   	push   %edi
404176:	55                   	push   %ebp
404177:	8b 6a 08             	mov    0x8(%edx),%ebp
40417a:	83 c1 05             	add    $0x5,%ecx
40417d:	e8 16 fc ff ff       	call   0x403d98
404182:	ff d1                	call   *%ecx
404184:	5d                   	pop    %ebp
404185:	5f                   	pop    %edi
404186:	5e                   	pop    %esi
404187:	5b                   	pop    %ebx
404188:	b8 01 00 00 00       	mov    $0x1,%eax
40418d:	c3                   	ret
40418e:	8b c0                	mov    %eax,%eax
404190:	09 c0                	or     %eax,%eax
404192:	75 0a                	jne    0x40419e
404194:	b8 d8 00 00 00       	mov    $0xd8,%eax
404199:	e8 9e 05 00 00       	call   0x40473c
40419e:	5a                   	pop    %edx
40419f:	54                   	push   %esp
4041a0:	55                   	push   %ebp
4041a1:	57                   	push   %edi
4041a2:	56                   	push   %esi
4041a3:	53                   	push   %ebx
4041a4:	50                   	push   %eax
4041a5:	52                   	push   %edx
4041a6:	54                   	push   %esp
4041a7:	6a 07                	push   $0x7
4041a9:	6a 01                	push   $0x1
4041ab:	68 de fa ed 0e       	push   $0xeedfade
4041b0:	52                   	push   %edx
4041b1:	ff 25 14 80 4a 00    	jmp    *0x4a8014
4041b7:	c3                   	ret
4041b8:	8b 44 24 30          	mov    0x30(%esp),%eax
4041bc:	c7 40 04 03 42 40 00 	movl   $0x404203,0x4(%eax)
4041c3:	e8 e4 25 00 00       	call   0x4067ac
4041c8:	8b 90 00 00 00 00    	mov    0x0(%eax),%edx
4041ce:	8b 0a                	mov    (%edx),%ecx
4041d0:	89 88 00 00 00 00    	mov    %ecx,0x0(%eax)
4041d6:	8b 42 0c             	mov    0xc(%edx),%eax
4041d9:	83 60 04 fd          	andl   $0xfffffffd,0x4(%eax)
4041dd:	81 38 de fa ed 0e    	cmpl   $0xeedfade,(%eax)
4041e3:	74 0d                	je     0x4041f2
4041e5:	8b 42 08             	mov    0x8(%edx),%eax
4041e8:	e8 2f f7 ff ff       	call   0x40391c
4041ed:	e8 06 fb ff ff       	call   0x403cf8
4041f2:	31 c0                	xor    %eax,%eax
4041f4:	83 c4 14             	add    $0x14,%esp
4041f7:	64 8b 10             	mov    %fs:(%eax),%edx
4041fa:	59                   	pop    %ecx
4041fb:	8b 12                	mov    (%edx),%edx
4041fd:	89 11                	mov    %edx,(%ecx)
4041ff:	5d                   	pop    %ebp
404200:	5f                   	pop    %edi
404201:	5e                   	pop    %esi
404202:	5b                   	pop    %ebx
404203:	b8 01 00 00 00       	mov    $0x1,%eax
404208:	c3                   	ret
404209:	8d 40 00             	lea    0x0(%eax),%eax
40420c:	e8 9b 25 00 00       	call   0x4067ac
404211:	8b 90 00 00 00 00    	mov    0x0(%eax),%edx
404217:	8b 0a                	mov    (%edx),%ecx
404219:	89 88 00 00 00 00    	mov    %ecx,0x0(%eax)
40421f:	8b 42 08             	mov    0x8(%edx),%eax
404222:	e8 f5 f6 ff ff       	call   0x40391c
404227:	5a                   	pop    %edx
404228:	8b 64 24 2c          	mov    0x2c(%esp),%esp
40422c:	31 c0                	xor    %eax,%eax
40422e:	59                   	pop    %ecx
40422f:	64 89 08             	mov    %ecx,%fs:(%eax)
404232:	58                   	pop    %eax
404233:	5d                   	pop    %ebp
404234:	e8 87 fb ff ff       	call   0x403dc0
404239:	ff e2                	jmp    *%edx
40423b:	c3                   	ret
40423c:	31 d2                	xor    %edx,%edx
40423e:	8b 4c 24 08          	mov    0x8(%esp),%ecx
404242:	8b 44 24 04          	mov    0x4(%esp),%eax
404246:	83 c1 05             	add    $0x5,%ecx
404249:	64 89 02             	mov    %eax,%fs:(%edx)
40424c:	ff d1                	call   *%ecx
40424e:	c2 0c 00             	ret    $0xc
404251:	c3                   	ret
404252:	8b c0                	mov    %eax,%eax
404254:	55                   	push   %ebp
404255:	8b ec                	mov    %esp,%ebp
404257:	8b 55 08             	mov    0x8(%ebp),%edx
40425a:	8b 02                	mov    (%edx),%eax
40425c:	3d 92 00 00 c0       	cmp    $0xc0000092,%eax
404261:	7f 2c                	jg     0x40428f
404263:	74 5c                	je     0x4042c1
404265:	3d 8e 00 00 c0       	cmp    $0xc000008e,%eax
40426a:	7f 15                	jg     0x404281
40426c:	74 57                	je     0x4042c5
40426e:	2d 05 00 00 c0       	sub    $0xc0000005,%eax
404273:	74 5c                	je     0x4042d1
404275:	2d 87 00 00 00       	sub    $0x87,%eax
40427a:	74 3d                	je     0x4042b9
40427c:	48                   	dec    %eax
40427d:	74 4e                	je     0x4042cd
40427f:	eb 60                	jmp    0x4042e1
404281:	05 71 ff ff 3f       	add    $0x3fffff71,%eax
404286:	83 e8 02             	sub    $0x2,%eax
404289:	72 36                	jb     0x4042c1
40428b:	74 30                	je     0x4042bd
40428d:	eb 52                	jmp    0x4042e1
40428f:	3d 96 00 00 c0       	cmp    $0xc0000096,%eax
404294:	7f 11                	jg     0x4042a7
404296:	74 3d                	je     0x4042d5
404298:	2d 93 00 00 c0       	sub    $0xc0000093,%eax
40429d:	74 2e                	je     0x4042cd
40429f:	48                   	dec    %eax
4042a0:	74 13                	je     0x4042b5
4042a2:	48                   	dec    %eax
4042a3:	74 24                	je     0x4042c9
4042a5:	eb 3a                	jmp    0x4042e1
4042a7:	2d fd 00 00 c0       	sub    $0xc00000fd,%eax
4042ac:	74 2f                	je     0x4042dd
4042ae:	83 e8 3d             	sub    $0x3d,%eax
4042b1:	74 26                	je     0x4042d9
4042b3:	eb 2c                	jmp    0x4042e1
4042b5:	b0 c8                	mov    $0xc8,%al
4042b7:	eb 2a                	jmp    0x4042e3
4042b9:	b0 c9                	mov    $0xc9,%al
4042bb:	eb 26                	jmp    0x4042e3
4042bd:	b0 cd                	mov    $0xcd,%al
4042bf:	eb 22                	jmp    0x4042e3
4042c1:	b0 cf                	mov    $0xcf,%al
4042c3:	eb 1e                	jmp    0x4042e3
4042c5:	b0 c8                	mov    $0xc8,%al
4042c7:	eb 1a                	jmp    0x4042e3
4042c9:	b0 d7                	mov    $0xd7,%al
4042cb:	eb 16                	jmp    0x4042e3
4042cd:	b0 ce                	mov    $0xce,%al
4042cf:	eb 12                	jmp    0x4042e3
4042d1:	b0 d8                	mov    $0xd8,%al
4042d3:	eb 0e                	jmp    0x4042e3
4042d5:	b0 da                	mov    $0xda,%al
4042d7:	eb 0a                	jmp    0x4042e3
4042d9:	b0 d9                	mov    $0xd9,%al
4042db:	eb 06                	jmp    0x4042e3
4042dd:	b0 ca                	mov    $0xca,%al
4042df:	eb 02                	jmp    0x4042e3
4042e1:	b0 ff                	mov    $0xff,%al
4042e3:	0f b6 c0             	movzbl %al,%eax
4042e6:	8b 52 0c             	mov    0xc(%edx),%edx
4042e9:	e8 06 eb ff ff       	call   0x402df4
4042ee:	5d                   	pop    %ebp
4042ef:	c2 04 00             	ret    $0x4
4042f2:	8b c0                	mov    %eax,%eax
4042f4:	8b 44 24 04          	mov    0x4(%esp),%eax
4042f8:	f7 40 04 06 00 00 00 	testl  $0x6,0x4(%eax)
4042ff:	0f 85 89 00 00 00    	jne    0x40438e
404305:	80 3d 24 b0 49 00 00 	cmpb   $0x0,0x49b024
40430c:	77 0f                	ja     0x40431d
40430e:	8d 44 24 04          	lea    0x4(%esp),%eax
404312:	50                   	push   %eax
404313:	e8 64 cf ff ff       	call   0x40127c
404318:	83 f8 00             	cmp    $0x0,%eax
40431b:	74 71                	je     0x40438e
40431d:	8b 44 24 04          	mov    0x4(%esp),%eax
404321:	fc                   	cld
404322:	e8 b9 f4 ff ff       	call   0x4037e0
404327:	8b 54 24 08          	mov    0x8(%esp),%edx
40432b:	6a 00                	push   $0x0
40432d:	50                   	push   %eax
40432e:	68 3a 43 40 00       	push   $0x40433a
404333:	52                   	push   %edx
404334:	ff 15 18 80 4a 00    	call   *0x4a8018
40433a:	8b 5c 24 04          	mov    0x4(%esp),%ebx
40433e:	81 3b de fa ed 0e    	cmpl   $0xeedfade,(%ebx)
404344:	8b 53 14             	mov    0x14(%ebx),%edx
404347:	8b 43 18             	mov    0x18(%ebx),%eax
40434a:	74 1d                	je     0x404369
40434c:	8b 15 10 80 4a 00    	mov    0x4a8010,%edx
404352:	85 d2                	test   %edx,%edx
404354:	0f 84 fa fe ff ff    	je     0x404254
40435a:	89 d8                	mov    %ebx,%eax
40435c:	ff d2                	call   *%edx
40435e:	85 c0                	test   %eax,%eax
404360:	0f 84 ee fe ff ff    	je     0x404254
404366:	8b 53 0c             	mov    0xc(%ebx),%edx
404369:	e8 6e fa ff ff       	call   0x403ddc
40436e:	8b 0d 04 80 4a 00    	mov    0x4a8004,%ecx
404374:	85 c9                	test   %ecx,%ecx
404376:	74 02                	je     0x40437a
404378:	ff d1                	call   *%ecx
40437a:	8b 4c 24 04          	mov    0x4(%esp),%ecx
40437e:	b8 d9 00 00 00       	mov    $0xd9,%eax
404383:	8b 51 14             	mov    0x14(%ecx),%edx
404386:	89 14 24             	mov    %edx,(%esp)
404389:	e9 ae 03 00 00       	jmp    0x40473c
40438e:	31 c0                	xor    %eax,%eax
404390:	c3                   	ret
404391:	8d 40 00             	lea    0x0(%eax),%eax
404394:	31 d2                	xor    %edx,%edx
404396:	8d 45 f4             	lea    -0xc(%ebp),%eax
404399:	64 8b 0a             	mov    %fs:(%edx),%ecx
40439c:	64 89 02             	mov    %eax,%fs:(%edx)
40439f:	89 08                	mov    %ecx,(%eax)
4043a1:	c7 40 04 f4 42 40 00 	movl   $0x4042f4,0x4(%eax)
4043a8:	89 68 08             	mov    %ebp,0x8(%eax)
4043ab:	a3 cc a7 4a 00       	mov    %eax,0x4aa7cc
4043b0:	c3                   	ret
4043b1:	8d 40 00             	lea    0x0(%eax),%eax
4043b4:	31 d2                	xor    %edx,%edx
4043b6:	a1 cc a7 4a 00       	mov    0x4aa7cc,%eax
4043bb:	85 c0                	test   %eax,%eax
4043bd:	74 1c                	je     0x4043db
4043bf:	64 8b 0a             	mov    %fs:(%edx),%ecx
4043c2:	39 c8                	cmp    %ecx,%eax
4043c4:	75 08                	jne    0x4043ce
4043c6:	8b 00                	mov    (%eax),%eax
4043c8:	64 89 02             	mov    %eax,%fs:(%edx)
4043cb:	c3                   	ret
4043cc:	8b 09                	mov    (%ecx),%ecx
4043ce:	83 f9 ff             	cmp    $0xffffffff,%ecx
4043d1:	74 08                	je     0x4043db
4043d3:	39 01                	cmp    %eax,(%ecx)
4043d5:	75 f5                	jne    0x4043cc