402fa6:	50                   	push   %eax
402fa7:	ff 75 08             	push   0x8(%ebp)
402faa:	e8 53 f4 ff ff       	call   0x402402
402faf:	84 c0                	test   %al,%al
402fb1:	74 4b                	je     0x402ffe
402fb3:	8b 4d fc             	mov    -0x4(%ebp),%ecx
402fb6:	a1 24 68 4c 00       	mov    0x4c6824,%eax
402fbb:	57                   	push   %edi
402fbc:	8b 04 88             	mov    (%eax,%ecx,4),%eax
402fbf:	8b 38                	mov    (%eax),%edi
402fc1:	80 bf 90 00 00 00 1b 	cmpb   $0x1b,0x90(%edi)
402fc8:	75 38                	jne    0x403002
402fca:	53                   	push   %ebx
402fcb:	8b 5d 0c             	mov    0xc(%ebp),%ebx
402fce:	8d 43 ff             	lea    -0x1(%ebx),%eax
402fd1:	83 f8 17             	cmp    $0x17,%eax
402fd4:	77 30                	ja     0x403006
402fd6:	0f b6 80 29 30 40 00 	movzbl 0x403029(%eax),%eax
402fdd:	ff 24 85 0d 30 40 00 	jmp    *0x40300d(,%eax,4)
402fe4:	6a 01                	push   $0x1
402fe6:	ff 75 14             	push   0x14(%ebp)
402fe9:	ff 75 10             	push   0x10(%ebp)
402fec:	53                   	push   %ebx
402fed:	57                   	push   %edi
402fee:	e8 cc ec ff ff       	call   0x401cbf
402ff3:	33 c0                	xor    %eax,%eax
402ff5:	40                   	inc    %eax
402ff6:	5b                   	pop    %ebx
402ff7:	5f                   	pop    %edi
402ff8:	8b e5                	mov    %ebp,%esp
402ffa:	5d                   	pop    %ebp
402ffb:	c2 20 00             	ret    $0x20
402ffe:	33 c0                	xor    %eax,%eax
403000:	eb f6                	jmp    0x402ff8
403002:	33 c0                	xor    %eax,%eax
403004:	eb f1                	jmp    0x402ff7
403006:	33 c0                	xor    %eax,%eax
403008:	eb ec                	jmp    0x402ff6
40300a:	8d 49 00             	lea    0x0(%ecx),%ecx
40300d:	06                   	push   %es
40300e:	30 40 00             	xor    %al,0x0(%eax)
403011:	e4 2f                	in     $0x2f,%al
403013:	40                   	inc    %eax
403014:	00 b2 d0 43 00 fb    	add    %dh,-0x4ffbc30(%edx)
40301a:	d0 43 00             	rolb   $1,0x0(%ebx)
40301d:	17                   	pop    %ss
40301e:	d1 43 00             	roll   $1,0x0(%ebx)
403021:	94                   	xchg   %eax,%esp
403022:	d0 43 00             	rolb   $1,0x0(%ebx)
403025:	06                   	push   %es
403026:	30 40 00             	xor    %al,0x0(%eax)
403029:	00 01                	add    %al,(%ecx)
40302b:	01 02                	add    %eax,(%edx)
40302d:	02 01                	add    (%ecx),%al
40302f:	01 01                	add    %eax,(%ecx)
403031:	06                   	push   %es
403032:	03 06                	add    (%esi),%eax
403034:	03 06                	add    (%esi),%eax
403036:	04 06                	add    $0x6,%al
403038:	01 06                	add    %eax,(%esi)
40303a:	01 06                	add    %eax,(%esi)
40303c:	01 06                	add    %eax,(%esi)
40303e:	05 06 01 55 8b       	add    $0x8b550106,%eax
403043:	ec                   	in     (%dx),%al
403044:	83 ec 40             	sub    $0x40,%esp
403047:	a1 78 62 4c 00       	mov    0x4c6278,%eax
40304c:	56                   	push   %esi
40304d:	33 f6                	xor    %esi,%esi
40304f:	a3 04 68 4c 00       	mov    %eax,0x4c6804
403054:	6a 0f                	push   $0xf
403056:	c7 45 c4 30 00 00 00 	movl   $0x30,-0x3c(%ebp)
40305d:	c7 45 c8 2b 00 00 00 	movl   $0x2b,-0x38(%ebp)
403064:	89 75 d0             	mov    %esi,-0x30(%ebp)
403067:	c7 45 d4 1e 00 00 00 	movl   $0x1e,-0x2c(%ebp)
40306e:	89 45 d8             	mov    %eax,-0x28(%ebp)
403071:	89 75 e0             	mov    %esi,-0x20(%ebp)
403074:	ff 15 30 f7 48 00    	call   *0x48f730
40307a:	89 45 e4             	mov    %eax,-0x1c(%ebp)
40307d:	8b 45 10             	mov    0x10(%ebp),%eax
403080:	89 45 f0             	mov    %eax,-0x10(%ebp)
403083:	8b 45 0c             	mov    0xc(%ebp),%eax
403086:	89 45 dc             	mov    %eax,-0x24(%ebp)
403089:	8d 45 c4             	lea    -0x3c(%ebp),%eax
40308c:	50                   	push   %eax
40308d:	89 75 e8             	mov    %esi,-0x18(%ebp)
403090:	c7 45 ec c4 fa 48 00 	movl   $0x48fac4,-0x14(%ebp)
403097:	c7 45 cc 87 12 40 00 	movl   $0x401287,-0x34(%ebp)
40309e:	ff 15 24 f7 48 00    	call   *0x48f724
4030a4:	68 80 f9 48 00       	push   $0x48f980
4030a9:	66 a3 b4 62 4c 00    	mov    %ax,0x4c62b4
4030af:	ff 15 14 f7 48 00    	call   *0x48f714
4030b5:	a3 08 68 4c 00       	mov    %eax,0x4c6808
4030ba:	8d 45 f4             	lea    -0xc(%ebp),%eax
4030bd:	50                   	push   %eax
4030be:	c7 45 f4 08 00 00 00 	movl   $0x8,-0xc(%ebp)
4030c5:	c7 45 f8 3b 01 00 00 	movl   $0x13b,-0x8(%ebp)
4030cc:	ff 15 ac f0 48 00    	call   *0x48f0ac
4030d2:	6a 01                	push   $0x1
4030d4:	6a 01                	push   $0x1
4030d6:	6a 21                	push   $0x21
4030d8:	6a 10                	push   $0x10
4030da:	6a 10                	push   $0x10
4030dc:	ff 15 b0 f0 48 00    	call   *0x48f0b0
4030e2:	68 a9 00 00 00       	push   $0xa9
4030e7:	ff 35 04 68 4c 00    	push   0x4c6804
4030ed:	a3 5c 68 4c 00       	mov    %eax,0x4c685c
4030f2:	ff 15 28 f7 48 00    	call   *0x48f728
4030f8:	50                   	push   %eax
4030f9:	6a ff                	push   $0xffffffff
4030fb:	ff 35 5c 68 4c 00    	push   0x4c685c
403101:	ff 15 88 f0 48 00    	call   *0x48f088
403107:	89 35 60 68 4c 00    	mov    %esi,0x4c6860
40310d:	5e                   	pop    %esi
40310e:	8b e5                	mov    %ebp,%esp
403110:	5d                   	pop    %ebp
403111:	c2 0c 00             	ret    $0xc
403114:	56                   	push   %esi
403115:	be 0c 68 4c 00       	mov    $0x4c680c,%esi
40311a:	8b 0d 14 68 4c 00    	mov    0x4c6814,%ecx
403120:	85 c9                	test   %ecx,%ecx
403122:	75 71                	jne    0x403195
403124:	8b ce                	mov    %esi,%ecx
403126:	e8 28 04 00 00       	call   0x403553
40312b:	83 3d 40 68 4c 00 00 	cmpl   $0x0,0x4c6840
403132:	75 0f                	jne    0x403143
403134:	83 3d dc 67 4c 00 00 	cmpl   $0x0,0x4c67dc
40313b:	0f 85 01 a0 03 00    	jne    0x43d142
403141:	5e                   	pop    %esi
403142:	c3                   	ret
403143:	a1 3c 68 4c 00       	mov    0x4c683c,%eax
403148:	8b 00                	mov    (%eax),%eax
40314a:	ff 70 08             	push   0x8(%eax)
40314d:	ff 15 c8 f0 48 00    	call   *0x48f0c8
403153:	a1 3c 68 4c 00       	mov    0x4c683c,%eax
403158:	85 c0                	test   %eax,%eax
40315a:	74 6a                	je     0x4031c6
40315c:	8b c8                	mov    %eax,%ecx
40315e:	8b 40 08             	mov    0x8(%eax),%eax
403161:	a3 3c 68 4c 00       	mov    %eax,0x4c683c
403166:	85 c9                	test   %ecx,%ecx
403168:	74 0b                	je     0x403175
40316a:	51                   	push   %ecx
40316b:	e8 3f 01 00 00       	call   0x4032af
403170:	a1 3c 68 4c 00       	mov    0x4c683c,%eax
403175:	85 c0                	test   %eax,%eax
403177:	74 38                	je     0x4031b1
403179:	83 60 04 00          	andl   $0x0,0x4(%eax)
40317d:	a1 3c 68 4c 00       	mov    0x4c683c,%eax
403182:	8b 0d 40 68 4c 00    	mov    0x4c6840,%ecx
403188:	49                   	dec    %ecx
403189:	89 0d 40 68 4c 00    	mov    %ecx,0x4c6840
40318f:	85 c9                	test   %ecx,%ecx
403191:	75 b5                	jne    0x403148
403193:	eb 9f                	jmp    0x403134
403195:	a1 10 68 4c 00       	mov    0x4c6810,%eax
40319a:	8b 44 88 fc          	mov    -0x4(%eax,%ecx,4),%eax
40319e:	8b 00                	mov    (%eax),%eax
4031a0:	85 c0                	test   %eax,%eax
4031a2:	74 16                	je     0x4031ba
4031a4:	ff 30                	push   (%eax)
4031a6:	ff 15 3c f6 48 00    	call   *0x48f63c
4031ac:	e9 69 ff ff ff       	jmp    0x40311a
4031b1:	83 25 38 68 4c 00 00 	andl   $0x0,0x4c6838
4031b8:	eb c8                	jmp    0x403182
4031ba:	8b ce                	mov    %esi,%ecx
4031bc:	e8 71 03 00 00       	call   0x403532
4031c1:	e9 54 ff ff ff       	jmp    0x40311a
4031c6:	8b 0d 40 68 4c 00    	mov    0x4c6840,%ecx
4031cc:	eb c1                	jmp    0x40318f
4031ce:	55                   	push   %ebp
4031cf:	8b ec                	mov    %esp,%ebp
4031d1:	51                   	push   %ecx
4031d2:	56                   	push   %esi
4031d3:	57                   	push   %edi
4031d4:	8b 7d 08             	mov    0x8(%ebp),%edi
4031d7:	33 f6                	xor    %esi,%esi
4031d9:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4031dc:	39 37                	cmp    %esi,(%edi)
4031de:	74 4b                	je     0x40322b
4031e0:	8b 41 64             	mov    0x64(%ecx),%eax
4031e3:	89 45 08             	mov    %eax,0x8(%ebp)
4031e6:	53                   	push   %ebx
4031e7:	85 c0                	test   %eax,%eax
4031e9:	74 3c                	je     0x403227
4031eb:	8b 41 60             	mov    0x60(%ecx),%eax
4031ee:	8b 04 b0             	mov    (%eax,%esi,4),%eax
4031f1:	8b 18                	mov    (%eax),%ebx
4031f3:	85 db                	test   %ebx,%ebx
4031f5:	74 2a                	je     0x403221
4031f7:	8b 8b cc 01 00 00    	mov    0x1cc(%ebx),%ecx
4031fd:	85 c9                	test   %ecx,%ecx
4031ff:	0f 85 63 9f 03 00    	jne    0x43d168
403205:	57                   	push   %edi
403206:	ff 33                	push   (%ebx)
403208:	ff 15 24 f5 48 00    	call   *0x48f524
40320e:	85 c0                	test   %eax,%eax
403210:	74 0c                	je     0x40321e
403212:	33 c0                	xor    %eax,%eax
403214:	40                   	inc    %eax
403215:	5b                   	pop    %ebx
403216:	5f                   	pop    %edi
403217:	5e                   	pop    %esi
403218:	8b e5                	mov    %ebp,%esp
40321a:	5d                   	pop    %ebp
40321b:	c2 04 00             	ret    $0x4
40321e:	8b 4d fc             	mov    -0x4(%ebp),%ecx
403221:	46                   	inc    %esi
403222:	3b 75 08             	cmp    0x8(%ebp),%esi
403225:	72 c4                	jb     0x4031eb
403227:	33 c0                	xor    %eax,%eax
403229:	eb ea                	jmp    0x403215
40322b:	33 c0                	xor    %eax,%eax
40322d:	eb e7                	jmp    0x403216
40322f:	56                   	push   %esi
403230:	8b f1                	mov    %ecx,%esi
403232:	8b 0e                	mov    (%esi),%ecx
403234:	85 c9                	test   %ecx,%ecx
403236:	7e 1d                	jle    0x403255
403238:	8b d1                	mov    %ecx,%edx
40323a:	0f b6 c1             	movzbl %cl,%eax
40323d:	c1 fa 10             	sar    $0x10,%edx
403240:	81 e1 00 ff 00 00    	and    $0xff00,%ecx
403246:	81 e2 ff 00 00 00    	and    $0xff,%edx
40324c:	c1 e0 10             	shl    $0x10,%eax
40324f:	0b d0                	or     %eax,%edx
403251:	0b d1                	or     %ecx,%edx
403253:	89 16                	mov    %edx,(%esi)
403255:	5e                   	pop    %esi
403256:	c3                   	ret
403257:	55                   	push   %ebp
403258:	8b ec                	mov    %esp,%ebp
40325a:	56                   	push   %esi
40325b:	8b f1                	mov    %ecx,%esi
40325d:	57                   	push   %edi
40325e:	33 ff                	xor    %edi,%edi
403260:	6a 0c                	push   $0xc
403262:	39 7e 04             	cmp    %edi,0x4(%esi)
403265:	74 2e                	je     0x403295
403267:	e8 8a dd 01 00       	call   0x420ff6
40326c:	59                   	pop    %ecx
40326d:	85 c0                	test   %eax,%eax
40326f:	74 0c                	je     0x40327d
403271:	ff 75 08             	push   0x8(%ebp)
403274:	8b c8                	mov    %eax,%ecx
403276:	e8 4c 00 00 00       	call   0x4032c7
40327b:	8b f8                	mov    %eax,%edi
40327d:	8b 46 04             	mov    0x4(%esi),%eax
403280:	89 47 08             	mov    %eax,0x8(%edi)
403283:	8b 46 04             	mov    0x4(%esi),%eax
403286:	89 78 04             	mov    %edi,0x4(%eax)
403289:	ff 46 08             	incl   0x8(%esi)
40328c:	89 7e 04             	mov    %edi,0x4(%esi)
40328f:	5f                   	pop    %edi
403290:	5e                   	pop    %esi
403291:	5d                   	pop    %ebp
403292:	c2 04 00             	ret    $0x4
403295:	e8 5c dd 01 00       	call   0x420ff6
40329a:	59                   	pop    %ecx
40329b:	85 c0                	test   %eax,%eax
40329d:	74 0c                	je     0x4032ab
40329f:	ff 75 08             	push   0x8(%ebp)
4032a2:	8b c8                	mov    %eax,%ecx
4032a4:	e8 1e 00 00 00       	call   0x4032c7
4032a9:	8b f8                	mov    %eax,%edi
4032ab:	89 3e                	mov    %edi,(%esi)
4032ad:	eb da                	jmp    0x403289
4032af:	56                   	push   %esi
4032b0:	8b f1                	mov    %ecx,%esi
4032b2:	ff 36                	push   (%esi)
4032b4:	e8 b3 dd 01 00       	call   0x42106c
4032b9:	56                   	push   %esi
4032ba:	e8 ad dd 01 00       	call   0x42106c
4032bf:	59                   	pop    %ecx
4032c0:	59                   	pop    %ecx
4032c1:	8b c6                	mov    %esi,%eax
4032c3:	5e                   	pop    %esi
4032c4:	c2 04 00             	ret    $0x4
4032c7:	55                   	push   %ebp
4032c8:	8b ec                	mov    %esp,%ebp
4032ca:	53                   	push   %ebx
4032cb:	8b d9                	mov    %ecx,%ebx
4032cd:	6a 0c                	push   $0xc
4032cf:	83 63 04 00          	andl   $0x0,0x4(%ebx)
4032d3:	83 63 08 00          	andl   $0x0,0x8(%ebx)
4032d7:	e8 1a dd 01 00       	call   0x420ff6
4032dc:	59                   	pop    %ecx
4032dd:	85 c0                	test   %eax,%eax
4032df:	74 15                	je     0x4032f6
4032e1:	56                   	push   %esi
4032e2:	8b 75 08             	mov    0x8(%ebp),%esi
4032e5:	57                   	push   %edi
4032e6:	8b f8                	mov    %eax,%edi
4032e8:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4032e9:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4032ea:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4032eb:	5f                   	pop    %edi
4032ec:	5e                   	pop    %esi
4032ed:	89 03                	mov    %eax,(%ebx)
4032ef:	8b c3                	mov    %ebx,%eax
4032f1:	5b                   	pop    %ebx
4032f2:	5d                   	pop    %ebp
4032f3:	c2 04 00             	ret    $0x4
4032f6:	33 c0                	xor    %eax,%eax
4032f8:	eb f3                	jmp    0x4032ed
4032fa:	56                   	push   %esi
4032fb:	8b f1                	mov    %ecx,%esi
4032fd:	57                   	push   %edi
4032fe:	8b 4e 78             	mov    0x78(%esi),%ecx
403301:	85 c9                	test   %ecx,%ecx
403303:	75 59                	jne    0x40335e
403305:	8b 46 7c             	mov    0x7c(%esi),%eax
403308:	83 f8 0b             	cmp    $0xb,%eax
40330b:	0f 8f ee 9e 03 00    	jg     0x43d1ff
403311:	0f 84 ce 9e 03 00    	je     0x43d1e5
403317:	83 e8 05             	sub    $0x5,%eax
40331a:	74 4e                	je     0x40336a
40331c:	83 e8 03             	sub    $0x3,%eax
40331f:	0f 84 a3 9e 03 00    	je     0x43d1c8
403325:	48                   	dec    %eax
403326:	48                   	dec    %eax
403327:	0f 84 81 9e 03 00    	je     0x43d1ae
40332d:	83 66 70 00          	andl   $0x0,0x70(%esi)
403331:	8d 4e 54             	lea    0x54(%esi),%ecx
403334:	c7 46 7c 01 00 00 00 	movl   $0x1,0x7c(%esi)
40333b:	e8 24 27 00 00       	call   0x405a64
403340:	8d 4e 24             	lea    0x24(%esi),%ecx
403343:	e8 1c 27 00 00       	call   0x405a64
403348:	8d 4e 14             	lea    0x14(%esi),%ecx
40334b:	e8 14 27 00 00       	call   0x405a64
403350:	56                   	push   %esi
403351:	e8 16 dd 01 00       	call   0x42106c
403356:	59                   	pop    %ecx
403357:	5f                   	pop    %edi
403358:	8b c6                	mov    %esi,%eax
40335a:	5e                   	pop    %esi
40335b:	c2 04 00             	ret    $0x4
40335e:	51                   	push   %ecx
40335f:	e8 d9 47 00 00       	call   0x407b3d
403364:	83 66 78 00          	andl   $0x0,0x78(%esi)
403368:	eb 9b                	jmp    0x403305
40336a:	8b 4e 70             	mov    0x70(%esi),%ecx
40336d:	85 c9                	test   %ecx,%ecx
40336f:	74 bc                	je     0x40332d
403371:	51                   	push   %ecx
403372:	e8 bd 5a 00 00       	call   0x408e34
403377:	eb b4                	jmp    0x40332d
403379:	53                   	push   %ebx
40337a:	56                   	push   %esi
40337b:	8b f1                	mov    %ecx,%esi
40337d:	33 db                	xor    %ebx,%ebx