402fdc:	8b 44 24 04          	mov    0x4(%esp),%eax
402fe0:	f7 40 04 06 00 00 00 	testl  $0x6,0x4(%eax)
402fe7:	0f 85 13 01 00 00    	jne    0x403100
402fed:	81 38 de fa ed 0e    	cmpl   $0xeedfade,(%eax)
402ff3:	8b 50 18             	mov    0x18(%eax),%edx
402ff6:	8b 48 14             	mov    0x14(%eax),%ecx
402ff9:	74 6e                	je     0x403069
402ffb:	fc                   	cld
402ffc:	e8 07 fd ff ff       	call   0x402d08
403001:	8b 15 0c 90 42 00    	mov    0x42900c,%edx
403007:	85 d2                	test   %edx,%edx
403009:	0f 84 f1 00 00 00    	je     0x403100
40300f:	ff d2                	call   *%edx
403011:	85 c0                	test   %eax,%eax
403013:	0f 84 e7 00 00 00    	je     0x403100
403019:	8b 54 24 0c          	mov    0xc(%esp),%edx
40301d:	8b 4c 24 04          	mov    0x4(%esp),%ecx
403021:	81 39 ce fa ef 0e    	cmpl   $0xeefface,(%ecx)
403027:	74 37                	je     0x403060
403029:	e8 da fe ff ff       	call   0x402f08
40302e:	80 3d 1c 60 42 00 00 	cmpb   $0x0,0x42601c
403035:	76 29                	jbe    0x403060
403037:	80 3d 18 60 42 00 00 	cmpb   $0x0,0x426018
40303e:	77 20                	ja     0x403060
403040:	8d 4c 24 04          	lea    0x4(%esp),%ecx
403044:	50                   	push   %eax
403045:	51                   	push   %ecx
403046:	e8 41 e0 ff ff       	call   0x40108c
40304b:	83 f8 00             	cmp    $0x0,%eax
40304e:	58                   	pop    %eax
40304f:	0f 84 ab 00 00 00    	je     0x403100
403055:	89 c2                	mov    %eax,%edx
403057:	8b 44 24 04          	mov    0x4(%esp),%eax
40305b:	8b 48 0c             	mov    0xc(%eax),%ecx
40305e:	eb 30                	jmp    0x403090
403060:	89 c2                	mov    %eax,%edx
403062:	8b 44 24 04          	mov    0x4(%esp),%eax
403066:	8b 48 0c             	mov    0xc(%eax),%ecx
403069:	80 3d 1c 60 42 00 01 	cmpb   $0x1,0x42601c
403070:	76 1e                	jbe    0x403090
403072:	80 3d 18 60 42 00 00 	cmpb   $0x0,0x426018
403079:	77 15                	ja     0x403090
40307b:	50                   	push   %eax
40307c:	8d 44 24 08          	lea    0x8(%esp),%eax
403080:	52                   	push   %edx
403081:	51                   	push   %ecx
403082:	50                   	push   %eax
403083:	e8 04 e0 ff ff       	call   0x40108c
403088:	83 f8 00             	cmp    $0x0,%eax
40308b:	59                   	pop    %ecx
40308c:	5a                   	pop    %edx
40308d:	58                   	pop    %eax
40308e:	74 70                	je     0x403100
403090:	83 48 04 02          	orl    $0x2,0x4(%eax)
403094:	53                   	push   %ebx
403095:	31 db                	xor    %ebx,%ebx
403097:	56                   	push   %esi
403098:	57                   	push   %edi
403099:	55                   	push   %ebp
40309a:	64 8b 1b             	mov    %fs:(%ebx),%ebx
40309d:	53                   	push   %ebx
40309e:	50                   	push   %eax
40309f:	52                   	push   %edx
4030a0:	51                   	push   %ecx
4030a1:	8b 54 24 28          	mov    0x28(%esp),%edx
4030a5:	6a 00                	push   $0x0
4030a7:	50                   	push   %eax
4030a8:	68 b4 30 40 00       	push   $0x4030b4
4030ad:	52                   	push   %edx
4030ae:	ff 15 14 90 42 00    	call   *0x429014
4030b4:	8b 7c 24 28          	mov    0x28(%esp),%edi
4030b8:	e8 93 15 00 00       	call   0x404650
4030bd:	ff b0 00 00 00 00    	push   0x0(%eax)
4030c3:	89 a0 00 00 00 00    	mov    %esp,0x0(%eax)
4030c9:	8b 6f 08             	mov    0x8(%edi),%ebp
4030cc:	8b 5f 04             	mov    0x4(%edi),%ebx
4030cf:	c7 47 04 e0 30 40 00 	movl   $0x4030e0,0x4(%edi)
4030d6:	83 c3 05             	add    $0x5,%ebx
4030d9:	e8 66 fe ff ff       	call   0x402f44
4030de:	ff e3                	jmp    *%ebx
4030e0:	e9 23 00 00 00       	jmp    0x403108
4030e5:	e8 66 15 00 00       	call   0x404650
4030ea:	8b 88 00 00 00 00    	mov    0x0(%eax),%ecx
4030f0:	8b 11                	mov    (%ecx),%edx
4030f2:	89 90 00 00 00 00    	mov    %edx,0x0(%eax)
4030f8:	8b 41 08             	mov    0x8(%ecx),%eax
4030fb:	e9 84 fc ff ff       	jmp    0x402d84
403100:	b8 01 00 00 00       	mov    $0x1,%eax
403105:	c3                   	ret
403106:	8b c0                	mov    %eax,%eax
403108:	8b 44 24 04          	mov    0x4(%esp),%eax
40310c:	8b 54 24 08          	mov    0x8(%esp),%edx
403110:	f7 40 04 06 00 00 00 	testl  $0x6,0x4(%eax)
403117:	74 1f                	je     0x403138
403119:	8b 4a 04             	mov    0x4(%edx),%ecx
40311c:	c7 42 04 38 31 40 00 	movl   $0x403138,0x4(%edx)
403123:	53                   	push   %ebx
403124:	56                   	push   %esi
403125:	57                   	push   %edi
403126:	55                   	push   %ebp
403127:	8b 6a 08             	mov    0x8(%edx),%ebp
40312a:	83 c1 05             	add    $0x5,%ecx
40312d:	e8 46 fe ff ff       	call   0x402f78
403132:	ff d1                	call   *%ecx
403134:	5d                   	pop    %ebp
403135:	5f                   	pop    %edi
403136:	5e                   	pop    %esi
403137:	5b                   	pop    %ebx
403138:	b8 01 00 00 00       	mov    $0x1,%eax
40313d:	c3                   	ret
40313e:	8b c0                	mov    %eax,%eax
403140:	8b 44 24 30          	mov    0x30(%esp),%eax
403144:	c7 40 04 8b 31 40 00 	movl   $0x40318b,0x4(%eax)
40314b:	e8 00 15 00 00       	call   0x404650
403150:	8b 90 00 00 00 00    	mov    0x0(%eax),%edx
403156:	8b 0a                	mov    (%edx),%ecx
403158:	89 88 00 00 00 00    	mov    %ecx,0x0(%eax)
40315e:	8b 42 0c             	mov    0xc(%edx),%eax
403161:	83 60 04 fd          	andl   $0xfffffffd,0x4(%eax)
403165:	81 38 de fa ed 0e    	cmpl   $0xeedfade,(%eax)
40316b:	74 0d                	je     0x40317a
40316d:	8b 42 08             	mov    0x8(%edx),%eax
403170:	e8 0f fc ff ff       	call   0x402d84
403175:	e8 72 fd ff ff       	call   0x402eec
40317a:	31 c0                	xor    %eax,%eax
40317c:	83 c4 14             	add    $0x14,%esp
40317f:	64 8b 10             	mov    %fs:(%eax),%edx
403182:	59                   	pop    %ecx
403183:	8b 12                	mov    (%edx),%edx
403185:	89 11                	mov    %edx,(%ecx)
403187:	5d                   	pop    %ebp
403188:	5f                   	pop    %edi
403189:	5e                   	pop    %esi
40318a:	5b                   	pop    %ebx
40318b:	b8 01 00 00 00       	mov    $0x1,%eax
403190:	c3                   	ret
403191:	8d 40 00             	lea    0x0(%eax),%eax
403194:	e8 b7 14 00 00       	call   0x404650
403199:	8b 90 00 00 00 00    	mov    0x0(%eax),%edx
40319f:	8b 0a                	mov    (%edx),%ecx
4031a1:	89 88 00 00 00 00    	mov    %ecx,0x0(%eax)
4031a7:	8b 42 08             	mov    0x8(%edx),%eax
4031aa:	e8 d5 fb ff ff       	call   0x402d84
4031af:	5a                   	pop    %edx
4031b0:	8b 64 24 2c          	mov    0x2c(%esp),%esp
4031b4:	31 c0                	xor    %eax,%eax
4031b6:	59                   	pop    %ecx
4031b7:	64 89 08             	mov    %ecx,%fs:(%eax)
4031ba:	58                   	pop    %eax
4031bb:	5d                   	pop    %ebp
4031bc:	e8 df fd ff ff       	call   0x402fa0
4031c1:	ff e2                	jmp    *%edx
4031c3:	c3                   	ret
4031c4:	31 d2                	xor    %edx,%edx
4031c6:	8b 4c 24 08          	mov    0x8(%esp),%ecx
4031ca:	8b 44 24 04          	mov    0x4(%esp),%eax
4031ce:	83 c1 05             	add    $0x5,%ecx
4031d1:	64 89 02             	mov    %eax,%fs:(%edx)
4031d4:	ff d1                	call   *%ecx
4031d6:	c2 0c 00             	ret    $0xc
4031d9:	c3                   	ret
4031da:	8b c0                	mov    %eax,%eax
4031dc:	55                   	push   %ebp
4031dd:	8b ec                	mov    %esp,%ebp
4031df:	8b 55 08             	mov    0x8(%ebp),%edx
4031e2:	8b 02                	mov    (%edx),%eax
4031e4:	3d 92 00 00 c0       	cmp    $0xc0000092,%eax
4031e9:	7f 2c                	jg     0x403217
4031eb:	74 5c                	je     0x403249
4031ed:	3d 8e 00 00 c0       	cmp    $0xc000008e,%eax
4031f2:	7f 15                	jg     0x403209
4031f4:	74 57                	je     0x40324d
4031f6:	2d 05 00 00 c0       	sub    $0xc0000005,%eax
4031fb:	74 5c                	je     0x403259
4031fd:	2d 87 00 00 00       	sub    $0x87,%eax
403202:	74 3d                	je     0x403241
403204:	48                   	dec    %eax
403205:	74 4e                	je     0x403255
403207:	eb 60                	jmp    0x403269
403209:	05 71 ff ff 3f       	add    $0x3fffff71,%eax
40320e:	83 e8 02             	sub    $0x2,%eax
403211:	72 36                	jb     0x403249
403213:	74 30                	je     0x403245
403215:	eb 52                	jmp    0x403269
403217:	3d 96 00 00 c0       	cmp    $0xc0000096,%eax
40321c:	7f 11                	jg     0x40322f
40321e:	74 3d                	je     0x40325d
403220:	2d 93 00 00 c0       	sub    $0xc0000093,%eax
403225:	74 2e                	je     0x403255
403227:	48                   	dec    %eax
403228:	74 13                	je     0x40323d
40322a:	48                   	dec    %eax
40322b:	74 24                	je     0x403251
40322d:	eb 3a                	jmp    0x403269
40322f:	2d fd 00 00 c0       	sub    $0xc00000fd,%eax
403234:	74 2f                	je     0x403265
403236:	83 e8 3d             	sub    $0x3d,%eax
403239:	74 26                	je     0x403261
40323b:	eb 2c                	jmp    0x403269
40323d:	b0 c8                	mov    $0xc8,%al
40323f:	eb 2a                	jmp    0x40326b
403241:	b0 c9                	mov    $0xc9,%al
403243:	eb 26                	jmp    0x40326b
403245:	b0 cd                	mov    $0xcd,%al
403247:	eb 22                	jmp    0x40326b
403249:	b0 cf                	mov    $0xcf,%al
40324b:	eb 1e                	jmp    0x40326b
40324d:	b0 c8                	mov    $0xc8,%al
40324f:	eb 1a                	jmp    0x40326b
403251:	b0 d7                	mov    $0xd7,%al
403253:	eb 16                	jmp    0x40326b
403255:	b0 ce                	mov    $0xce,%al
403257:	eb 12                	jmp    0x40326b
403259:	b0 d8                	mov    $0xd8,%al
40325b:	eb 0e                	jmp    0x40326b
40325d:	b0 da                	mov    $0xda,%al
40325f:	eb 0a                	jmp    0x40326b
403261:	b0 d9                	mov    $0xd9,%al
403263:	eb 06                	jmp    0x40326b
403265:	b0 ca                	mov    $0xca,%al
403267:	eb 02                	jmp    0x40326b
403269:	b0 ff                	mov    $0xff,%al
40326b:	25 ff 00 00 00       	and    $0xff,%eax
403270:	8b 52 0c             	mov    0xc(%edx),%edx
403273:	e8 58 f6 ff ff       	call   0x4028d0
403278:	5d                   	pop    %ebp
403279:	c2 04 00             	ret    $0x4
40327c:	8b 44 24 04          	mov    0x4(%esp),%eax
403280:	f7 40 04 06 00 00 00 	testl  $0x6,0x4(%eax)
403287:	0f 85 89 00 00 00    	jne    0x403316
40328d:	80 3d 18 60 42 00 00 	cmpb   $0x0,0x426018
403294:	77 0f                	ja     0x4032a5
403296:	8d 44 24 04          	lea    0x4(%esp),%eax
40329a:	50                   	push   %eax
40329b:	e8 ec dd ff ff       	call   0x40108c
4032a0:	83 f8 00             	cmp    $0x0,%eax
4032a3:	74 71                	je     0x403316
4032a5:	8b 44 24 04          	mov    0x4(%esp),%eax
4032a9:	fc                   	cld
4032aa:	e8 59 fa ff ff       	call   0x402d08
4032af:	8b 54 24 08          	mov    0x8(%esp),%edx
4032b3:	6a 00                	push   $0x0
4032b5:	50                   	push   %eax
4032b6:	68 c2 32 40 00       	push   $0x4032c2
4032bb:	52                   	push   %edx
4032bc:	ff 15 14 90 42 00    	call   *0x429014
4032c2:	8b 5c 24 04          	mov    0x4(%esp),%ebx
4032c6:	81 3b de fa ed 0e    	cmpl   $0xeedfade,(%ebx)
4032cc:	8b 53 14             	mov    0x14(%ebx),%edx
4032cf:	8b 43 18             	mov    0x18(%ebx),%eax
4032d2:	74 1d                	je     0x4032f1
4032d4:	8b 15 0c 90 42 00    	mov    0x42900c,%edx
4032da:	85 d2                	test   %edx,%edx
4032dc:	0f 84 fa fe ff ff    	je     0x4031dc
4032e2:	89 d8                	mov    %ebx,%eax
4032e4:	ff d2                	call   *%edx
4032e6:	85 c0                	test   %eax,%eax
4032e8:	0f 84 ee fe ff ff    	je     0x4031dc
4032ee:	8b 53 0c             	mov    0xc(%ebx),%edx
4032f1:	e8 c6 fc ff ff       	call   0x402fbc
4032f6:	8b 0d 04 90 42 00    	mov    0x429004,%ecx
4032fc:	85 c9                	test   %ecx,%ecx
4032fe:	74 02                	je     0x403302
403300:	ff d1                	call   *%ecx
403302:	8b 4c 24 04          	mov    0x4(%esp),%ecx
403306:	b8 d9 00 00 00       	mov    $0xd9,%eax
40330b:	8b 51 14             	mov    0x14(%ecx),%edx
40330e:	89 14 24             	mov    %edx,(%esp)
403311:	e9 72 03 00 00       	jmp    0x403688
403316:	31 c0                	xor    %eax,%eax
403318:	c3                   	ret
403319:	8d 40 00             	lea    0x0(%eax),%eax
40331c:	31 d2                	xor    %edx,%edx
40331e:	8d 45 f4             	lea    -0xc(%ebp),%eax
403321:	64 8b 0a             	mov    %fs:(%edx),%ecx
403324:	64 89 02             	mov    %eax,%fs:(%edx)
403327:	89 08                	mov    %ecx,(%eax)
403329:	c7 40 04 7c 32 40 00 	movl   $0x40327c,0x4(%eax)
403330:	89 68 08             	mov    %ebp,0x8(%eax)
403333:	a3 24 96 42 00       	mov    %eax,0x429624
403338:	c3                   	ret
403339:	8d 40 00             	lea    0x0(%eax),%eax
40333c:	31 d2                	xor    %edx,%edx
40333e:	a1 24 96 42 00       	mov    0x429624,%eax
403343:	85 c0                	test   %eax,%eax
403345:	74 1c                	je     0x403363
403347:	64 8b 0a             	mov    %fs:(%edx),%ecx
40334a:	39 c8                	cmp    %ecx,%eax
40334c:	75 08                	jne    0x403356
40334e:	8b 00                	mov    (%eax),%eax
403350:	64 89 02             	mov    %eax,%fs:(%edx)
403353:	c3                   	ret
403354:	8b 09                	mov    (%ecx),%ecx
403356:	83 f9 ff             	cmp    $0xffffffff,%ecx
403359:	74 08                	je     0x403363
40335b:	39 01                	cmp    %eax,(%ecx)
40335d:	75 f5                	jne    0x403354
40335f:	8b 00                	mov    (%eax),%eax
403361:	89 01                	mov    %eax,(%ecx)
403363:	c3                   	ret
403364:	55                   	push   %ebp
403365:	8b ec                	mov    %esp,%ebp
403367:	83 c4 f8             	add    $0xfffffff8,%esp
40336a:	53                   	push   %ebx
40336b:	56                   	push   %esi
40336c:	57                   	push   %edi
40336d:	be 20 96 42 00       	mov    $0x429620,%esi
403372:	8b 46 08             	mov    0x8(%esi),%eax
403375:	85 c0                	test   %eax,%eax
403377:	74 54                	je     0x4033cd
403379:	8b 5e 0c             	mov    0xc(%esi),%ebx
40337c:	8b 40 04             	mov    0x4(%eax),%eax
40337f:	89 45 fc             	mov    %eax,-0x4(%ebp)
403382:	33 c0                	xor    %eax,%eax
403384:	55                   	push   %ebp
403385:	68 b9 33 40 00       	push   $0x4033b9
40338a:	64 ff 30             	push   %fs:(%eax)
40338d:	64 89 20             	mov    %esp,%fs:(%eax)
403390:	85 db                	test   %ebx,%ebx
403392:	7e 1b                	jle    0x4033af
403394:	4b                   	dec    %ebx
403395:	89 5e 0c             	mov    %ebx,0xc(%esi)
403398:	8b 45 fc             	mov    -0x4(%ebp),%eax
40339b:	8b 44 d8 04          	mov    0x4(%eax,%ebx,8),%eax
40339f:	89 45 f8             	mov    %eax,-0x8(%ebp)
4033a2:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
4033a6:	74 03                	je     0x4033ab
4033a8:	ff 55 f8             	call   *-0x8(%ebp)
4033ab:	85 db                	test   %ebx,%ebx
4033ad:	7f e5                	jg     0x403394
4033af:	33 c0                	xor    %eax,%eax
4033b1:	5a                   	pop    %edx
4033b2:	59                   	pop    %ecx
4033b3:	59                   	pop    %ecx
4033b4:	64 89 10             	mov    %edx,%fs:(%eax)
4033b7:	eb 14                	jmp    0x4033cd
4033b9:	e9 1e fc ff ff       	jmp    0x402fdc
4033be:	e8 a1 ff ff ff       	call   0x403364
4033c3:	e8 78 fd ff ff       	call   0x403140
4033c8:	e8 c7 fd ff ff       	call   0x403194
4033cd:	5f                   	pop    %edi
4033ce:	5e                   	pop    %esi
4033cf:	5b                   	pop    %ebx
4033d0:	59                   	pop    %ecx
4033d1:	59                   	pop    %ecx
4033d2:	5d                   	pop    %ebp
4033d3:	c3                   	ret
4033d4:	55                   	push   %ebp
4033d5:	8b ec                	mov    %esp,%ebp
4033d7:	83 c4 f8             	add    $0xfffffff8,%esp